Сложете клак
За помощен метод addEventListener()вмъкнахме елемента
- копие на щракване "клик" (натискане на левия бутон на мишката върху елемента), което за допълнителна мощност на целевия обект Event променя името на елемента таг, а като стойност на стойността на стойността "LI “, след което променя цветовия стил на текста на зеленинапри спръскване. За да отдадете уважение, най-удобно е да инсталирате една проба за елемента Batkiv, а не за елемента skin, това е особено важно при динамична промяна на броя на елементите, в който случай е необходимо да се актуализират пробите за елементите.
- Абонирайте се чрез HTML-код (не се препоръчва да туитвате).
- Чрез кода на JavaScript за помощ при настройка на захранващия елемент на [pod_ya] , de [pod_ya] - tse im'ya sevnoї podії.
- Чрез JavaScript код за подпомагане на специалния метод addEventListener.
- Намерете елемента (обекта) в DOM дървото, въз основа на който искате да надплатите.
- Дайте намерения обект на власт, тъй като майката е виновна за такъв поглед:
на [подия], де [подия] - це им'я пеене події.
След когото е необходимо властите да внесат проба, tobto. функцията е възложена на deacu, тъй като трябва да се изпълнява в момента. - събитие (obv'yazkovy) - im'ya podії, по пътя, който искате да се абонирате (слушайте);
- обратно извикване (obv'yazkovy) - функция (анонимно име), като начин за преобразуване на подразделение;
- фаза (не obov'yazykovy) - етапът, който има промяна на сърцето. Този параметър приема 2 стойности: true (на етапа на сливане (препълване) под) и false (на етапа на сливане под). Ако този параметър не е зададен, стойността ще бъде false.
- подтип: ред, който указва типа на подтипа, за който е регистриран семплер. Типът подтип трябва да бъде указан без префикса on.
- obrobnik: функция viraz или името на функцията, тъй като тя е виновна за извикването, когато подтипът е присвоен на типа.
- фаза: булева стойност, което означава, че за коя фаза ще бъде регистрирано разширението. Възможни стойности:
- true – регистрира примерен журнал за фазата на препълване.
- false – Регистрирайте подписа за фазата на сливане.
- Ni.
Ако е указана логическата стойност true, тогава функцията, зададена от подслушвателя, по никакъв начин не е отговорна за промоцията (включете метода preventDefault()). Въпреки че методът preventDefault() все още е деактивиран, браузърът ще го игнорира и ще създаде предупреждение в конзолата. Логическата стойност false показва, че функцията за проверка може да проверява за повишения (можете да извикате метода preventDefault()).
Като се има предвид спецификацията, стойността за заключването за пасивния параметър трябва винаги да е false. Въпреки това дава възможност на подслушвателите да слушат, да блокират основния поток на браузъра при опит за скролиране, което може да доведе до значително намаляване на производителността на час скролиране.
За да разрешат тези проблеми, deyaki браузъри (zocrema, і ) промени стойността зад пасивния пропуск на true за подразделенията touchstart и touchmove на равните възли на Window, Document и Document .body. Tse zabіgaє vikliku подслушване podіy, че vіn не може да блокира vіbrаzhennya storіnki pіd hоrkuchuvannya.
Не е нужно да се притеснявате за пасивната стойност за основния подпревъртане (превъртане), невъзможно е да се разпознаят фрагментите, слушателите не могат да блокират показването на страничната лента по всяко време.
Нюансите на озвучаването на tsgogo в obrobnik podії
По правило е необходимо да се прехвърли елемент, върху който се използва долен индекс, особено важно е, когато се използва определен долен индекс за елементи от същия тип. Как да добавите основна функция за намиране на елемент след помощен метод addEventListener(), тогава тази стойност в средата на такава рутина ще бъде присвоена на елемента. Стойността на това ще бъде в съответствие със стойностите на мощността на currentTarget към аргумента на обекта на подсъбитието, който се предава на подобекта, например:
елемент.addEventListener("щракване", функция ( д) (конзола .log(това .className); // извежда към конзолата стойността на мощността на className на елемента elemконзола .log( д.currentTarget === това); // вярно)))За да обърнете внимание на важен момент, чието значение може да бъде променено, например функциите със стрелки не се интересуват от контекста на който и в кой случай няма да разчитате на елемента:
елемент.addEventListener("щракване", ( д) => (конзола .log(това .className); // това не е настроено на elemконзола .log( д.currentTarget === това); // невярно)Нека разгледаме по-отблизо ситуацията, за която извадка от индикациите е атрибут на HTMLелемент. Кодът JavaScriptСтойността на атрибута е ефективно пакетирана от функцията на колектора, така че стойността на атрибута да се показва по начина, по който съответства на метода addEventListener()(това в кода представлява сила върху елемента):
id = "btn" type = "button" onclick = "console.log(this.id)" > // показва в конзолата стойността на id стойността на елементаПри натискане на елемент
Обърнете внимание на важния момент, стойността на това в средата на функцията myFunc()Ще го изпратим до глобалния обект Window, в противен случай ще зададем стойността на undefined в този случай, което означава, че е указан строг режим ( строг режим).
За да предадете необходимия контекст, можете да съпоставите метода call() на обекта Function, който ви позволява да извикате (виждате) функцията като метод на обекта, задавайки контекста (this) за определената стойност, предавайки в необходимите аргументи:
id="btn" type="button" onclick="myFunc.call( това )"> <-- добавляем атрибут событий onclick -->В който случай, когато извикате pod, конзолата ще покаже стойността на глобалния атрибут на елемента, който е извикал pod.
В тези статии можем да разгледаме различни начини, с помощта на които можете да се абонирате за под-елементи на уеб страницата. Един от начините за базиране на персонализирани HTML атрибути, другите два начина са чрез JavaScript с допълнително включване или метода addEventListener().
Как мога да предплатя таксата?
Под абонамент чрез HTML
Tsei sposib ґruntuєtsya на vikoristanní атрибут, който може да изглежда на [podіya], de [podіya] - tse im'ya пеене podії.
Основни функции: добавете единичен атрибут към елемента (например: onclick - de: on означава sub и click - типа sub) към стойностите, които заместват оператора или функцията. Този оператор или функция ще бъдат проверени при текущата стойност на елемента.
Например, добавете щракване към подбутона, когато се появи, той ще покаже подкана за метода за предупреждение за помощ:
Тъй като е необходимо да се маркира кодът в примерния код, е необходимо да се маркира функцията.
Например, за ориентир, има по-широк задник с различни функции:
Например, добавете щракване към подбутона, когато е зададен, се показва функцията:
Тази опция за абониране за абонамента не се препоръчва, т.к wine не само характеризира HTML кода, но може също да бъде дефиниран, свързан със заместващите символи на обекта на събитието, ключовата дума this и in.
Този начин на абониране за sub се извършва чрез JavaScript за помощта на елемента на Authority на [sub]. Основният принцип на този метод се използва в офанзивата:
Например, добавете към бутона, който може да кликне id="myButton", когато е зададен, се показва функцията:
//Намерете елемента на sub, ако искате да предплатите var myButton = document.getElementById("myButton"); //добавете към обекта силата, която може да има върху [pod_ya] //когато щракването е зададено, функцията myFunction е деактивирана myButton.onclick = myFunction; //функция myFunction функция myFunction() ( //функционален код //... )
Ако пълномощията са зададени чрез атрибут, тогава браузърът, когато чете HTML кода, създава автоматично правата. Tobto. браузър pratsyuê z podіyami рядко за помощта на vіdpovіdnih власти на обекта (елемента).
Yakshcho Вие подписвате на дъното на различен начин, tobto. чрез атрибута и с допълнителна мощност, тогава браузърът ще има повече възможности за внедряване на sub, намигване с допълнителна мощност. По-добре е да не се абонирате за події по-добре за помощта на властите на обекта (елемента), не се препоръчва да печелите атрибутите за тези цели.
Абониране за суб чрез JavaScript за помощта на метода addEventListener
Този начин за абониране за суб се извършва чрез JavaScript код в допълнение към специалния метод addEventListener. Този метод на предплащане е най-добрият и се препоръчва от стандарта.
Методът addEventListener за присвоявания за добавяне на слушател (слушател) към слушател на песен (събитие) към елемент и обратно извикване, когато се случи. В допълнение към метода addEventListener, има още един метод removeEventListener, който се използва за целите на тази функция. подслушвател.
Синтаксисът на методите addEventListener и removeEventListener е:
Element.addEventListener(събитие, обратно извикване, фаза); element.removeEventListener(събитие, обратно извикване, фаза);
Методът addEventListener има 3 параметъра:
Например, използване на анонимна функция за обработка на под "щракване":
Element.addEventListener("клик", функция ( //... ));
Например, използвайки функцията myFunction() за обработка на под "щракване":
Element.addEventListener("щракване", myFunction); //функция myFunction функция myFunction() ( //... )
Последователят, който сте добавили към помощния метод addEventListener(), може, ако е необходимо, да бъде премахнат към помощния метод removeEventListener(). Възможно е да видите търсачката само в този случай, както в метода addEventListener() на задачи в наименувана функция. Въпреки че сте задали търсене за привидно анонимна функция в метода addEventListener(), не можете да я видите зад помощния метод removeEventListener().
Например добавете и след това премахнете рутината myFunction за обекта на поддокумент mousemove:
//добавяне за манипулатор на документи на обект submousemove, присвоявания за функция за подобие myFunction document.addEventListener("mousemove",myFunction); //Видимост за манипулатора на документа на поддокумента на обекта mousemove, задачи за визуалната функция myFunction document.removeEventListener("mousemove", myFunction);
Document.addEventListener("щракване",myFunction); функция myFunction() ( alert("ОБИЧАМ JAVASCRIPT!");)
Например, добавете набор от листове с данни, които ще победят в случай на нападение в района, към който принадлежи документът:
Document.addEventListener("клик",myFunction1); document.addEventListener("клик",myFunction2);
Например, дайте манипулатори на обекта на документа за предстоящите субтитри: click , mouseover , mouseout .
Document.addEventListener("mouseover",myFunction1); document.addEventListener("клик",myFunction2); document.addEventListener("mouseout",myFunction3);
Например, за да прехвърлим стойността на параметрите към семплера, ще използваме анонимна функция. За тази анонимна функция ще спечелим една функция (с име) за допълнителна, на която ще предадем необходимите параметри:
Document.addEventListener("click",function() ( myFunction(параметър1, параметър2); ));
Например, когато щракнете върху документ, променете цвета на фона на основния елемент. Obrobnik podії vykonati v vyglyadí anonimnoї funktsії.
Document.addEventListner("click",function() (document.body.style.backgroundColor = green; ));
Как да практикуваме правилно с подиите
Практикувайте в JavaScript с HTML документ (DOM-дърво) и обработвайте данните е необходимо само ако страната се интересува:
//Ако цялата страница е заета, извикваме нашата функция pageInit window.addEventListener("load", pageInit); //функция pageInit() функция pageInit() ( //абониране за суб)
Window.addEventListener("load", function() ( //абониране за суб)
По-правилно е да работите не с подзаглавието за зареждане (появява се, след като страницата е напълно заредена), а с подменюто DOMContentLoaded, както се случва, след като браузърът улови HTML документа и подкани DOM дървото. Tobto. За да работите с DOM-дървото, няма нужда да проверявате, докато всички ресурси на HTML-страната не са достатъчни, за да може браузърът да събуди DOM дървото.
//HTML документът е зареден и DOM дървото е породено document.addEventListener("DOMContentLoaded", pageInit); //функция pageInit() функция pageInit() ( //абониране за суб)
Горният код може да бъде написан по-кратко, за допълнителна анонимна функция:
Document.addEventListener("DOMContentLoaded", function() ( //абониране за суб)
Един час, за да се подпишете веднъж на дъното на обекта
Например, подпишете в долната част на щракнете веднъж всички елементи на p. Заместител на спомагателната функция myFunction():
Document.addEventListener("DOMContentLoaded", function() ( var elementsP = document.getElementsByTagName("P"); for (var i=0; i< elementsP.length, i++) { elementsP[i].addEventListener("click", myFunction); } } //функция myFunction() function myFunction() { //... }
Описание
Методът addEventListener() регистрира слушател за целевия обект (eventTarget), който ще бъде извикан от различни слушатели. Полезен обект може да бъде обект Element, Document, Window или някакъв друг обект, който го поддържа, например като XMLHttpRequest.
Синтаксис
eventTarget.addEventListener(pod_type, манипулатор, фаза);Аргументи
Значение, което се обръща
Забележка: върху метода addEventListener() може да се щракне повече от веднъж и да се регистрира с произволен брой различни колектори на данни за един и същ тип събитие в един и същи целеви обект. При подаване в обекта ще бъдат извикани всички мостри, регистрирани за зададения вид абонамент по реда на тяхното регистриране.опитвам
Задник
Под обработка
Клиентските програми на мобилен JavaScript се основават на модела на програмиране, ако програмите се поддържат от подчинени. С този стил на програмиране уеб браузърът генерира Pod, ако има някакъв възможен елемент в документа. Например, уеб браузър генерира под, ако завърши заснемането на документ, ако изпрати съобщение до мишката или ако натисне клавиш на клавиатурата.
За да може JavaScript програма да извика един подтип за един елемент в документ, тя може да регистрира една или повече функции, които ще бъдат извикани, когато подтипът бъде извикан. Mite on uvazі, но това не е уникална характеристика на уеб програмирането: всички програми с графичен интерфейс ползвача правят едно и също нещо - те постоянно проверяват, за момента ще бъде (да се проверява отдолу) и ще бъде проверени за тези, които са.
Тип шушулка- Редът, който обозначава вида на diy, който е предизвикал подиума. Типът "mousemove", например, означава, че говорителят е преместил въвеждането на мишката. Типът "keydown" означава, че е натиснат клавиш на клавиатурата. А типът „зареждане“ означава, че документът (или друг ресурс) е зареден от мярката. Oskіlki тип podії - това е просто ред, йога понякога се нарича с името на podії.
Предназначение- този обект, за който винилът има подиум или за който подиумът е вързан. Ако говорите за подиума, озвучете вида и метода на подиума. Например под „зареждането“ на обекта Window или под елемента „щракване“.
Obrobnik podії- tse funktsіya, yak obroblyaê, chi v_dgukuєtsya podіya. Програмата трябва да регистрира функцията си на колектор на капсули в уеб браузъра, като посочи типа на капсулата, към която е насочена. Ако посоченият целеви обект има подтип на посочения тип, браузърът ще промени името. Ако podobniкс се извикат за някакъв обект, понякога се казва, че браузърът е „унищожил“ или „генерирал“ под.
Обект на подаване- tse ob'єkt, po'yazaniya z sing podієyu и stіtіt іnformatsiyu pro tsiu podіyu. Под обектите се предават на функцията за манипулиране на подобекти като аргумент (за IE8 и по-стари версии подобектът de вече не е наличен като събитие за глобална промяна). Предметите с мустаци са под власт Тип, което означава вида на подразделението, тази власт цел, Какво определя начина на подаване.
За типа кожа на подразделение набор от правомощия се присвоява на свързания обект. Например обектът за натискане на долната част на мишката включва координатите на мишката, а обектът на натискане на долната част на клавиатурата, за премахване на информация за натиснатите клавиши и за натиснатите клавиши-модификатори. За богати типове подтипове се присвояват само стандартни правомощия, като тип и цел, и никаква допълнителна основна информация не се предава. За такъв тип подразделения е важно самото наличие на подразделения, а друга информация не е важна.
Разширено дъно- този процес, в часа на който браузърът е счупен, за някои обекти следващото щракване и етикетите са правилни. В различни случаи, присвоени на един обект (като "натоварването" на обекта Window), необходимостта от техните удължени дни. Въпреки това, ако обвинявате песен в елемент от документ, тя се разширява или се слива нагоре по дървото на документа.