From 980fe00a74a9ad013b945755415ace2e5429c3c2 Mon Sep 17 00:00:00 2001 From: Alexey Pyltsyn Date: Wed, 27 Oct 2021 02:31:24 +0300 Subject: [RU] Remove notranslate (#2874) --- files/ru/web/api/touch_events/index.html | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'files/ru/web/api/touch_events/index.html') diff --git a/files/ru/web/api/touch_events/index.html b/files/ru/web/api/touch_events/index.html index aaede09e9d..8f54941279 100644 --- a/files/ru/web/api/touch_events/index.html +++ b/files/ru/web/api/touch_events/index.html @@ -42,7 +42,7 @@ translation_of: Web/API/Touch_events

Создание canvas

-
<canvas id="canvas" width="600" height="600" style="border:solid black 1px;">
+
<canvas id="canvas" width="600" height="600" style="border:solid black 1px;">
   Ваш браузер не поддерживает элемент canvas.
 </canvas>
 <br>
@@ -52,7 +52,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

После загрузки страницы будет вызвана функция startup(), показанная ниже

-
function startup() {
+
function startup() {
   var el = document.getElementById("canvas");
   el.addEventListener("touchstart", handleStart, false);
   el.addEventListener("touchend", handleEnd, false);
@@ -68,12 +68,12 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Рассмотрим касания в действии.

-
var ongoingTouches = [];
+
var ongoingTouches = [];
 

Когда возникает событие {{event("touchstart")}}, свидетельствующее о новом касании к поверхности, вызывается приведённая ниже функция handleStart().

-
function handleStart(evt) {
+
function handleStart(evt) {
   evt.preventDefault();
   console.log("touchstart.");
   var el = document.getElementById("canvas");
@@ -101,7 +101,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Каждый раз, когда двигается один или несколько пальцев, срабатывает событие {{event("touchmove")}}, в результате чего вызывается наша функция handleMove().В этом примере данная функция ответственна за обновление данных о касании и рисование линии от предыдущей до текущей точки касания.

-
function handleMove(evt) {
+
function handleMove(evt) {
   evt.preventDefault();
   var el = document.getElementById("canvas");
   var ctx = el.getContext("2d");
@@ -141,7 +141,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Когда пользователь убирает палец с сенсорной поверхности, срабатывает событие {{domxref("Element/touchend_event", "touchend")}}. Мы обрабатываем его, вызывая функцию handleEnd(), которая представлена ниже. Её задача - рисовать последний отрезок линии для каждого касания, которое завершилось, и удалять точку касания из текущего списка касаний.

-
function handleEnd(evt) {
+
function handleEnd(evt) {
   evt.preventDefault();
   log("touchend");
   var el = document.getElementById("canvas");
@@ -173,7 +173,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Если палец пользователя перемещается в интерфейс браузера или прикосновение должно быть отменено, отправляется событие {{domxref("Element/touchcancel_event", "touchcancel")}}, и мы вызываем функцию handleCancel(), приведённую ниже.

-
function handleCancel(evt) {
+
function handleCancel(evt) {
   evt.preventDefault();
   console.log("touchcancel.");
   var touches = evt.changedTouches;
@@ -195,7 +195,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Чтобы рисунок каждого касания выглядел по-разному, используется функция colorForTouch(), в которой цвета выбираются на основе уникального идентификатора касаний. Этот идентификатор является скрытым числом, но мы, по крайней мере, можем полагаться на то, что у каждого активного на данный момент касания он уникальный.

-
function colorForTouch(touch) {
+
function colorForTouch(touch) {
   var r = touch.identifier % 16;
   var g = Math.floor(touch.identifier / 3) % 16;
   var b = Math.floor(touch.identifier / 7) % 16;
@@ -214,7 +214,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Некоторые браузеры (например, мобильный Safari) повторно используют объекты касания в разных событиях, поэтому лучше копировать только важные свойства, а не ссылаться на весь объект.

-
function copyTouch({ identifier, pageX, pageY }) {
+
function copyTouch({ identifier, pageX, pageY }) {
   return { identifier, pageX, pageY };
 }
@@ -222,7 +222,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Приведённая ниже функция ongoingTouchIndexById() сканирует весь массив ongoingTouches, чтобы найти касание, соответствующее данному идентификатору, после чего возвращает в массив индекс этого касания.

-
function ongoingTouchIndexById(idToFind) {
+
function ongoingTouchIndexById(idToFind) {
   for (var i = 0; i < ongoingTouches.length; i++) {
     var id = ongoingTouches[i].identifier;
 
@@ -236,7 +236,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Отображение происходящего

-
function log(msg) {
+
function log(msg) {
   var p = document.getElementById('log');
   p.innerHTML = msg + "\n" + p.innerHTML;
 }
@@ -255,7 +255,7 @@ Log: <pre id="log" style="border: 1px solid #ccc;"></pre>

Данный пример очень упрощён и может привести к странному поведению. Он уместен исключительно как учебный пример.

-
function onTouch(evt) {
+
function onTouch(evt) {
   evt.preventDefault();
   if (evt.touches.length > 1 || (evt.type == "touchend" && evt.touches.length > 0))
     return;
-- 
cgit v1.2.3-54-g00ecf