aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/api/event/preventdefault/index.html
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
commit074785cea106179cb3305637055ab0a009ca74f2 (patch)
treee6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/api/event/preventdefault/index.html
parentda78a9e329e272dedb2400b79a3bdeebff387d47 (diff)
downloadtranslated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz
translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2
translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip
initial commit
Diffstat (limited to 'files/ru/web/api/event/preventdefault/index.html')
-rw-r--r--files/ru/web/api/event/preventdefault/index.html145
1 files changed, 145 insertions, 0 deletions
diff --git a/files/ru/web/api/event/preventdefault/index.html b/files/ru/web/api/event/preventdefault/index.html
new file mode 100644
index 0000000000..de7b9c69c1
--- /dev/null
+++ b/files/ru/web/api/event/preventdefault/index.html
@@ -0,0 +1,145 @@
+---
+title: Event.preventDefault()
+slug: Web/API/Event/preventDefault
+tags:
+ - DOM
+ - preventDefault
+ - метод
+ - события
+translation_of: Web/API/Event/preventDefault
+---
+<div>{{ apiRef("DOM") }}</div>
+
+<div>Метод preventDefault () интерфейса {{domxref ("Event")}} сообщает {{Glossary("User agent")}}, что если событие не обрабатывается явно, его действие по умолчанию не должно выполняться так, как обычно. Событие продолжает распространяться как обычно, до тех пор, пока один из его обработчиков не вызывает методы {{domxref ("Event.stopPropagation", " stopPropagation ()")}} или {{domxref (" Event.stopImmediatePropagation", " stopImmediatePropagation ()")}}, любой из которых сразу же прекращает распространение.</div>
+
+<div></div>
+
+<div>Как отмечено ниже, вызов метода preventDefault () для события, не подлежащего отмене, например события, отправленного через {{domxref("EventTarget.dispatchEvent ()")}}, без указания cancelable: true не имеет эффекта.</div>
+
+
+
+<h2 id="Syntax" name="Syntax">Синтаксис</h2>
+
+<pre class="syntaxbox"><em>event</em>.preventDefault();</pre>
+
+<h2 id="Example" name="Example">Пример</h2>
+
+<p>По умолчанию щелчок по флажку переключает его состояние на противоположное. В этом примере показано, как предотвратить такое поведение:</p>
+
+<pre class="brush: html">&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;Пример preventDefault&lt;/title&gt;
+
+&lt;script&gt;
+function stopDefAction(evt) {
+ evt.preventDefault();
+}
+
+document.getElementById('my-checkbox').addEventListener(
+ 'click', stopDefAction, false
+);
+&lt;/script&gt;
+&lt;/head&gt;
+
+&lt;body&gt;
+
+&lt;p&gt;Пожалуйста, щёлкните по флажку.&lt;/p&gt;
+
+&lt;form&gt;
+ &lt;input type="checkbox" id="my-checkbox" /&gt;
+ &lt;label for="my-checkbox"&gt;Checkbox&lt;/label&gt;
+&lt;/form&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;</pre>
+
+<p>Вы можете посмотреть работу <code>preventDefault</code> в действии <a class="internal" href="/samples/domref/dispatchEvent.html" title="samples/domref/dispatchEvent.html">здесь</a>.</p>
+
+<p>В следующем примере некорректный ввод останавливается и вводимый символ не добавляется в поле с <code>preventDefault()</code>.</p>
+
+<div id="preventDefault_invalid_text">
+<pre class="brush: html">&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;Пример preventDefault&lt;/title&gt;
+
+&lt;script&gt;
+</pre>
+
+<pre class="brush: js">function Init () {
+ var myTextbox = document.getElementById('my-textbox');
+ myTextbox.addEventListener( 'keypress', checkName, false );
+}
+
+function checkName(evt) {
+ var charCode = evt.charCode;
+ if (charCode != 0) {
+ if (charCode &lt; 97 || charCode &gt; 122) {
+ evt.preventDefault();
+ alert(
+ "Пожалуйста, используйте только буквы нижнего регистра на латинице"
+ + "\n" + "charCode: " + charCode + "\n"
+ );
+ }
+ }
+}
+</pre>
+
+<pre class="brush: html">&lt;/script&gt;
+&lt;/head&gt;
+&lt;body onload="Init ()"&gt;
+ &lt;p&gt;Пожалуйста, введите своё имя, используя только буквы нижнего регистра на латинице.&lt;/p&gt;
+ &lt;form&gt;
+ &lt;input type="text" id="my-textbox" /&gt;
+ &lt;/form&gt;
+&lt;/body&gt;
+&lt;/html&gt;</pre>
+</div>
+
+<p>Результат выполнения кода:</p>
+
+<p>{{ EmbedLiveSample('preventDefault_invalid_text', '', '', '') }}</p>
+
+<h2 id="Notes" name="Notes">Примечания</h2>
+
+<p>Вызов <code>preventDefault</code> на любой стадии выполнения  потока событий отменяет событие, а это означает, что любое действие по умолчанию обычно принимается реализацией, как  результат события, которое  не произойдет.</p>
+
+<div class="note">
+<p><strong>Примечание:</strong>  В {{Gecko("6.0")}}, вызов <code>preventDefault()</code> приводит к {{ domxref("event.defaultPrevented") }} к переходу значения в состояние <code>True</code>.</p>
+</div>
+
+<p>Вы можете использовать <a href="/en-US/docs/Web/API/event.cancelable" title="/en-US/docs/Web/API/event.cancelable">event.cancelable</a> чтобы проверить, является ли событие отменяемым. Вызов <code>preventDefault</code> для неотменяемых событий не имеет никакого эффекта.</p>
+
+<p><code>preventDefault</code> не останавливает дальнейшее распространение событий на DOM. Для этого следует использовать <a href="/en-US/docs/Web/API/event.stopPropagation" title="/en-US/docs/Web/API/event.stopPropagation">event.stopPropagation</a>.</p>
+
+<h2 id="Specifications" name="Specifications">Спецификации</h2>
+
+<table class="standard-table">
+ <thead>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>{{SpecName('DOM WHATWG', '#dom-event-preventdefault', 'Event.preventDefault()')}}</td>
+ <td>{{ Spec2('DOM WHATWG') }}</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>{{SpecName('DOM4', '#dom-event-preventdefault', 'Event.preventDefault()')}}</td>
+ <td>{{ Spec2('DOM4') }}</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>{{SpecName('DOM2 Events', '#Events-Event-preventDefault', 'Event.preventDefault()')}}</td>
+ <td>{{ Spec2('DOM2 Events') }}</td>
+ <td>
+ <p>первичное определение.</p>
+ </td>
+ </tr>
+ </tbody>
+</table>