dir.by  
  Поиск  
Компьютер, программы
JavaScript - язык программирования для HTML
 Рисуем картинку с движением. Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval 
Картинка

перемещается вот так:

Шаг 1. Создадим новый файл 1.html
  Html     Напишем код в файле 1.html
<html>

<!-- заголовок -->
<head>
     <meta charset="utf-8">
     <title>Example</title>
</head>

<!-- страница -->
<body>
     <!-- HTML canvas -->
     <canvas id="canvas1" width='400px' height='400px'></canvas>

     <!-- JavaScript функции -->
     <script>

          // загружаем картинки из файлов
          function loadImages(files, callbackAllFilesLoaded)
          {
               // считаем количество файлов
               var countFilesToLoad = 0;
               for (var fileId in files)
               {
                    countFilesToLoad++;
               }

               var images = {};
               for (var fileId in files)
               {
                    // создаем пустую картинку
                    images[fileId] = new Image();

                    // событие onload
                    images[fileId].onload = function()
                    {
                         // когда все файлы загрузились, вызываем нашу функцию callbackAllFilesLoaded чтобы нарисовать картинку
                         if ( --countFilesToLoad <= 0 )
                         {
                              callbackAllFilesLoaded(images);
                         }
                    };

                    // загружаем картинку
                    images[fileId].src = files[fileId];
               }
          }

          function AnimationInit()
          {
               window.requestAnimFrame = (function(callback) {
                    return window.requestAnimationFrame ||
                         window.webkitRequestAnimationFrame ||
                         window.mozRequestAnimationFrame ||
                         window.oRequestAnimationFrame ||
                         window.msRequestAnimationFrame ||
                         function(callback)
                         {
                              window.setTimeout(callback, 1000 / 60);
                         };
               })();
          }
     </script>

     <!-- главный код -->
     <script>
          function MyAnimation(context, canvas, loadedImages, data)
          {
               <!-- очищаем все на canvas -->
               context.clearRect(0, 0, canvas.width, canvas.height);
         
               // рисуем картинку по позиции x,y
               context.drawImage(loadedImages.tree, data.xPos, data.yPos);
         
               // меняем позицию картинки
               data.xPos = data.xPos>410 ? 0 : data.xPos + 2.6;
         
               // request new frame
               requestAnimFrame(function(){
               MyAnimation(context, canvas, loadedImages, data);
               });
          }

          <!-- файл -->
          var files = {
               tree : "./tree.jpg"
          };
         
          <!-- context для рисования -->
          var canvas = document.getElementById('canvas1');
          var context = canvas.getContext('2d');

          <!-- загружаем картинки -->
          loadImages(files, function (loadedImages)
          {
               <!-- инициализация анимации -->
               AnimationInit();

               <!-- данные для перемещения -->
               var data = {
                    xPos: 0,
                    yPos: 20
               };

               <!-- запускаем бесконечную анимацию -->
               MyAnimation(context, canvas, loadedImages, data);
          });

     </script>
</body>

</html>
Шаг 2. Скачиваем картинку

tree.jpg картинка должна находится в той же папке, где и файл 1.html
Шаг 3. Запускаем в браузере файл 1.html
 
← Предыдущая тема
Анимация человечка в движении (sprite). Используем HTML элементы <div>, <img>. Для анимации используем CSS стили: "animation", "background-image", "background-position", "keyframes" | стандарт ES5
 
Следующая тема →
Рисуем картинку с движением и анимацией (sprite). Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval | стандарт ES5
 
Ваши Отзывы ... комментарии ...
   
Вашe имя
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

Экскурсии по Москве Экскурсии по Москве: пешеходные, автобусные и речные прогулки на любой вкус
  Объявления  
  Объявления  
 
В каком редакторе (программе) удобно писать JavaScript код?
Новое приложение
Создаем новое приложение JavaScript в текстовом редакторе
Создаем новое приложение JavaScript в Visual Studio Code. Отладка приложения. Смотрим в отладке как по шагам выполняется JavaScript
Отладка JavaScript, HTML
Отладка JavaScript в Google Chrome. Используем debugger
Как узнать (увидеть) где ошибка при выполнении HTML, JavaScript в Google Chrome
Отладка JavaScript в Google Chrome. Используем console.log("Hello!")
JavaScript стандарт ES5. Издан в 2009 году. Поддерживается всеми браузерами
Функция
Функция в JavaScript. Пример: function CalculateSum(value1, value2) { ... } | стандарт ES5
Функция return || в JavaScript. Пример: function getPersonName(name) { return name || "Evgen" } | стандарт ES5
Вызов функции до ее определения (Hoisting) в JavaScript | стандарт ES5
Переменные внутри функции (время жизни переменных внутри функции) JavaScript | стандарт ES5
Передача параметров по значению и по ссылке в функцию в JavaScript | стандарт ES5
Как узнать ... существует ли функция по названию в JavaScript? Пример: typeof calcSum == "function" | стандарт ES5
Функция описанная внутри функции. JavaScript | стандарт ES5
Безымянная функция
Безымянная функция в JavaScript . Использование безымянной функции: создаем новую переменную и новой переменной назначаем безымянную функцию. Пример: var myFunc1 = function (a, b) { return a + b; } ; | стандарт ES5
Безымянная функция в JavaScript . Использование безымянной функции: безымянную функцию передаем как параметр в другую функцию. Пример: Calculate(15, 7, function(v1, v2) {return v1+v2;}); | стандарт ES5
Само-вызывающая безымянная функция
Само-вызывающая безымянная функция в JavaScript. Где используется? Используется в Yandex рекламе. Пример: ( function(){ ... } )(); | стандарт ES5
Создаем файл js с объектом содержащий экспортные переменные и функции. Это пример использования само-вызывающей безымянной функции | стандарт ES5
Лямбда функция (сокращенный вариант безымянной функции)
Лямбда функция в JavaScript . Использование лямбда функции. [Пример1] var myFunc1 = (a, b) => a + b; [Пример2] Calculate(15, 7, (v1, v2) => {return v1+v2;}); | стандарт ES5
Переменные
Переменные в JavaScript (текст, число, флаг, дата и время) | стандарт ES5
Доступ к переменным до их определения (Hoisting) в JavaScript | стандарт ES5
Область видимости переменных var, let, const в JavaScript | стандарт ES5
Текст, строки в JavaScript
Текст в JavaScript. Класс String. Пример: var myText = String("World"); | стандарт ES5
Length (длина строки в JavaScript) | стандарт ES5
Функция replace(text1, text2) заменить текст в JavaScript | стандарт ES5
Функция toUpperCase() переводит текст в верхний регистр JavaScript | стандарт ES5
Функция toLowerCase() перевод текста в нижний регистр JavaScript | стандарт ES5
Функция split(delimiter) разделяет строку на подстроки JavaScript | стандарт ES5
Функция charAt(position) получить символ по позиции JavaScript | стандарт ES5
Функция substr(pos, len) возвращает подстроку JavaScript | стандарт ES5
Функция slice(pos1, pos2) возвращает подстроку JavaScript | стандарт ES5
Функция substring(pos1, pos2) возвращает подстроку JavaScript | стандарт ES5
Функция indexOf(text, startPos) ищет подстроку и возвращает индекс JavaScript | стандарт ES5
Функция startsWith(text) проверяет, начинается ли строка с указанной подстроки JavaScript | стандарт ES5
Функция trim() удалить пробелы в начале и в конце строки JavaScript | стандарт ES5
Функция padStart(length, symbol) добавляет в начале строки символы до нужной длины строки JavaScript | стандарт ES5
Функция padEnd(length, symbol) добавляет в конце строки символы до нужной длины строки JavaScript | стандарт ES5
В текстовую переменную можно назначить текст как много строк. Пример: var myText = `Hello \n Thanks \n Bye` | JavaScript стандарт ES6
В текстовой переменной можно писать выражения с переменными (форматирование, интерполяция строки). Пример: var myText = `Hello ${a}` | JavaScript стандарт ES6
Регулярные выражения
Регулярные выражения в JavaScript | стандарт ES5
Пишем регулярное выражение чтобы удалить все специальные символы кроме букв и цифр | Regex JavaScript | стандарт ES5
Числа и математические функции
Числа в JavaScript. Конвертация текста в число. Округление числа. Перевод шестнадцатиричного в десятичное число. | стандарт ES5
Математические функции из библиотеки Math: Sin, cos, log, pow и так далее в JavaScript | стандарт ES5
Дата и время
Дата и время (год, месяц, число, часы, минуты, секунды) в JavaScript. Класс Date | стандарт ES5
Массив
Массив в JavaScript это [] или класс Array | стандарт ES5
Что значит 3 точки ...items | Пример 1: Math.max(...prices) | Пример 2: books.push(...items) | JavaScript, стандарт ES5
Различие между push(items) и push(...items) | Добавление массива в массив в JavaScript | стандарт ES5
Найти max цены в сложном массиве: [ {name:"Tomate", price:10}, {name:"Apple", price:17}, {name:"Orange", price:15} ] в JavaScript | стандарт ES5
Найти min цены в сложном массиве: [ {name:"Tomate", price:10}, {name:"Apple", price:17}, {name:"Orange", price:15} ] в JavaScript | стандарт ES5
Коллекции Map и Set
Коллекция "ключ-значение" в JavaScript. Класс Map | стандарт ES5
Коллекция уникальных значений в JavaScript. Класс Set | стандарт ES5
Объект {набор свойств и функций}
{} это объект в JavaScript. Объект содержит набор свойств и функции. Пример var book = {Name: "Волшебник Средиземноморья", Price: 120}; | стандарт ES5
{...} = объект в JavaScript заполняем из переменных класса или другим объектом. Пример: const {name, total, price} = b.myProps; | стандарт ES5
Класс (это функция с использованием new) | стандарт ES5
Класс в JavaScript это обычная функция-конструктор. Такая функция-конструктор содержит простые данные, объекты, внутренние функции в JavaScript. Для создания объекта класса используется new Пример: function Book() { ... } ... var obj1 = new Book(); | стандарт ES5
Инкапсуляция переменных (скрытие переменных для доступа) в функции (в виде класса) в JavaScript | стандарт ES5
prototype - это набор функций, переменных для всех экземпляров класса (в виде функции) в JavaScript | стандарт ES5
try catch
Зачем нужно использовать try и catch в JavaScript? | стандарт ES5
Замыкание (closure) в Javascript
Что такое замыкания (closure) в JavaScript ? Стандарт ES5
Управление памятью в JavaScript
Управление памятью в JavaScript | стандарт ES5
Примеры движение картинки и анимация
Анимация человечка на месте. Используем HTML элемент <div>. Для анимации используем CSS стили: "animation", "background-image", "background-position", "keyframes" | стандарт ES5
Анимация человечка в движении (sprite). Используем HTML элементы <div>, <img>. Для анимации используем CSS стили: "animation", "background-image", "background-position", "keyframes" | стандарт ES5
Рисуем картинку с движением. Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval | стандарт ES5
Рисуем картинку с движением и анимацией (sprite). Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval | стандарт ES5
Примеры
Как определить устройство (планшет, компьютер, телефон) сейчас используется в JavaScript, HTML | стандарт ES5
Редактор текста пишем на HTML, JavaScript | стандарт ES5
Делаем Popup используя HTML и Javascript
Как сделать Popup окно в HTML странице | Javascript, HTML, CSS
Моя игра (HTML, JavaScript)
Моя игра "Wizard World" | HTML, JavaScript
PDF readers. Загрузка и отображение файла PDF (JavaScript, HTML)
PDF reader. Загрузка и отображение файла PDF (adobe JavaScript, HTML) | PDF JavaScript implemented by Adobe
PDF reader. Загрузка и отображение файла PDF (JavaScript, HTML) | PDF JavaScript implemented by Mozilla
JavaScript стандарт ES6. Издан в 2015 году. Поддерживается НЕ всеми браузерами. Синонимы ES6, ES2015, ECMAScript 2015
В текстовой переменной можно писать выражения с переменными (форматирование, интерполяция строки). Пример: var myText = `Hello ${a}` | JavaScript стандарт ES6
class | Класс в JavaScript. Пример: class Book {...} ... var obj1 = new Book(); | стандарт ES6
promise в JavaScript | стандарт ES6

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика