Основы JavaScript. Что такое JavaScripts? Основные функции JavaScript

HTML накладывает на сайт некоторые ограничения, и чтобы их преодолеть, необходимо немножко выйти за рамки языка гипертекстовой разметки. HTML нужен, в основном, для упорядочивания текста и графики на веб-странице, для связи разных файлов воедино. И он отлично справляется с этими задачами. Если вы хотите, чтобы страницы вашего сайта практически не отличались от обычных рисунков на бумаге, то языка гипертекстовой разметки, то есть HTML будет вполне достаточно.

Если же вы хотите создать нечто особенное, уникальное, что будет выделять ваш сайт и привлечет внимание пользователей, то вам стоит обратиться к языку программирования Java Script.

Например, при помощи Java Script, на сайте можно реализовать следующее:

  • Добавить на сайт функцию поиска. Это обеспечит пользователям огромные преимущества, избавив их от необходимости вручную просматривать каждую веб-страницу в поисках нужной информации.
  • Защитить паролем определенную область сайта. Это позволит ограничить доступ к той информации, которую не рекомендуется выставлять на всеобщее обозрение.
  • Обеспечить пользователям возможность общаться. Для этого существует множество способов: начиная от простых досок сообщений до полнофункциональных чатов.
  • Добавить на сайт хронометрические средства, например, часы или календарь. Пользователям обычно это нравится.
  • Добавить на сайт игры и головоломки. Поверьте, это лучший способ заставить посетителей расслабиться и чувствовать себя как дома.
  • Сделать ссылки на постоянно обновляемую информацию. Посетителей сайта обязательно заинтересуют новости, курсы валют, прогноз погоды и тому подобное.
  • Почему именно к Java Script? Языки программирования PHP и MySQL были созданы для облегчения работы на компьютере.

    Обработка осуществляется в веб-браузере пользователя, поэтому нет никакой нагрузки на сервер. Для добавления скриптов, написанных другими программистами большого ума не надо. Это легко сможет сделать простой разработчик веб-сайтов.

    Как правило, в программный код не требуется вносить никаких изменений. В лучшем случае кое-где придется поменять имя файла или добавить URL-адреса в какой-либо перечень.

    Коротко о том, как работает Java Script

    При работе с Java Script в код веб-страницы нужно добавить два компонента: сам скрипт и процедуру, которая будет его запускать.

    Обычно в инструкции, которая прилагается к скрипту, содержится вся необходимая информация, касающаяся процедуры запуска скрипта.

    Тело скрипта размещается в контейнерном теге , как в приведенном ниже скелете программного кода, где определяется некоторая функция whatever.



    /*
    Здесь обычно расположен комментарий.
    */
    function whatever ()
    {
    А в этом месте сам программный код.
    }

    Допускается размещение скрипта внутри тега , а не , однако, это может оказаться рискованным. Веб-браузер должен перевести код Java Script, написанный программистом, в машинный код.

    Скрипт тега обрабатывается браузером раньше, чем элементы тега . Это значит, что скрипт будет определен и готов к выполнению прежде, чем что-либо отобразится в окне веб-браузера.

    Если же скрипт расположен внутри тега , может возникнуть такая ситуация, что пользователь обратится к скрипту раньше, чем он будет определен. В этом случае скрипт просто не сработает. Поэтому лучше все-таки придерживаться обычной последовательности.

    На страницу также должна быть добавлена какая-то процедура, которая запустит скрипт. Она обычно находится внутри элемента .

    Запуск скрипта может осуществляться различными способами, но разработчику совсем не обязательно знать их все. Каждый скрипт, взятый из интернета и переведенный в HTML-код, подразумевает свою процедуру запуска.

    Примеры.

    1. Активизация скрипта происходит после щелчка указателем мыши на каком-либо элементе интерфейса, когда пользователь наводит на него указатель мыши. Для этого применяется атрибут onClick.
    Так в следующем фрагменте атрибут onClick используется для элемента А:
    Щелкните здесь для выполнения функции whatever.

    Но вообще атрибут onClick уникальный и может применяться практически для любых элементов.

    2. Или скрипт может запускаться после загрузки веб-страницы в окно браузера.
    Для активизации скрипта после загрузки веб-страницы используется атрибут onload элемента , как в следующем примере.

    Существует огромное множество других атрибутов. Например, атрибут onMouseOver, который используется для запуска скрипта после того, как пользователь наводит указатель мыши на какой-либо элемент интерфейса. Или атрибут onMouseOut – когда пользователь убирает указатель мыши.

    Java Script и jQuery Кстати, освоение Java Script ещё более упростилось с появлением библиотеки jQuery.

    Функции jQuery решают очень много практических и насущных вопросов. Создание даже сложного скрипта становиться простым при использовании.

    А для сайта использование jQuery открывает огромный перечень плагинов, которые можно подключить к любому ресурсу, главное, чтобы использовался Java Script. C помощью плагинов jQuery можно несколькими строчками кода реализовать

    • красивые и сложные меню,
    • галереи изображений,
    • различные функции управления страницами.
    Если ваш сайт сделан на CMS, то вы также можете внедрять туда собственные скрипты. Сочетание простой CMS и Java Script позволяет создавать очень красивые, простые в реализации и поддержке, а к тому же и лёгкие решения для небольших проектов.

    С помощью Java Script и jQuery можно превратить даже самый простой сайт-визитку в яркий и полноценный ресурс, который будет прекрасным представителем компании на бескрайних просторах интернета.

    JavaScript развивается с огромной скоростью. Большая волна новых технологий накрывает камни громоздких задач, которые еще вчера казались неприступными и угрожающими.

    В данном уроке мы приводим 10 полезных скриптов, которые помогут вам сохранить время при решении общих задач. Большинство из приведенных скриптов можно просто скопировать в свой проект, но лучше проделать аналитическую работу, чтобы адаптировать код наилучшим образом.

    1. Максимальная высота или ширина в наборе элементов

    Очень полезный скрипт для выравнивания высоты или ширины колонок.

    Вариант для высоты:

    Var getMaxHeight = function ($elms) { var maxHeight = 0; $elms.each(function () { // В некоторых случаях можно использовать outerHeight() var height = $(this).height(); if (height > maxHeight) { maxHeight = height; } }); return maxHeight; };

    Использование:

    $(elements).height(getMaxHeight($(elements)));

    Чтобы использовать скрипт для ширины нужно заменить все включения height и Height на width и Width соответственно.

    2. Эффективная проверка дат

    Инструментарий JavaScript для работы с датами очень прост и не достаточен для форматирования дат. Хотя существует множество библиотек которые существенно облегчают обработку дат, часто нужно просто проверять дату в строке. Для такого случая отлично подходит следующий скрипт. Он позволяет проверить дату с любым разделителем и годом, указанным 4-мя цифрами.

    Function isValidDate(value, userFormat) { // Используем формат по умолчанию, если ничего не указано userFormat = userFormat || "mm/dd/yyyy"; // Находим разделитель исключая символы месяца, дня и года (в английском варианте - m, d, y) var delimiter = /[^mdy]/.exec(userFormat); // Создаем массив из месяца, дня и года, // то есть мы знаем порядок формата var theFormat = userFormat.split(delimiter); // Создаем массив из даты пользователя var theDate = value.split(delimiter); function isDate(date, format) { var m, d, y, i = 0, len = format.length, f; for (i; i < len; i++) { f = format[i]; if (/m/.test(f)) m = date[i]; if (/d/.test(f)) d = date[i]; if (/y/.test(f)) y = date[i]; } return (m > 0 && m < 13 && y && y.length === 4 && d > 0 && // Проверяем правильность дня месяца d в нижней части HTML файла, является то, что HTML-элементы загружаются браузером в том порядке, в котором они расположены в файле. Поэтому, если JavaScript загружается первым и ему нужно взаимодействовать с HTML ниже его, он не сможет работать, так как JavaScript будет загружен раньше, чем HTML, с которым нужно работать. Поэтому, располагать JavaScript в нижней части HTML страницы считается лучшей стратегией.

    Что произошло?

    Итак, ваш заголовок текста был изменен на "Hello world!" с помощью JavaScript. Мы сделали это с помощью вызова функции querySelector() , захватив ссылку на наш заголовок и сохранив её в переменной, названной myHeading . Это очень похоже на то, что мы делали в CSS с помощью селекторов. Если вы хотите что-то сделать с элементом, то для начала вам нужно его выбрать.

    После этого, вы устанавливаете значение переменной myHeading в textContent свойство (которое представляет собой контент заголовка) "Hello world!".

    Ускоренный курс по основам языка

    Давайте познакомимся с некоторыми основными возможностями языка JavaScript, чтобы дать вам больше понимания, как это всё работает. Более того, эти возможности являются общими для всех языков программирования. Если вы сможете понять эти основы, вы будете в состоянии начать программировать, как ни в чём не бывало!

    Переменные

    Примечание : JavaScript чувствителен к регистру - myVariable отличается от переменной myvariable . Если у вас возникают проблемы в вашем коде, проверьте регистр!

    После объявления переменной вы можете присвоить ей значение:

    MyVariable = "Bob";

    Вы можете сделать обе эти операции на одной и той же строке, если вы захотите:

    Var myVariable = "Bob";

    Вы можете получить значение, просто вызвав переменную по имени:

    MyVariable;

    После установки значения переменной вы можете изменить его позже:

    Var myVariable = "Bob"; myVariable = "Steve";

    Обратите внимание, что переменные имеют разные типы данных :

    Переменная Пояснение Пример StringNumberBooleanObject
    Последовательность текста, называемая строкой. Чтобы указать, что это значение является строкой, вы должны заключить его в кавычки. var myVariable = "Bob";
    Числа. Числа не имеют кавычек вокруг них. var myVariable = 10;
    Значение True(Правда)/False(Ложь). Слова true и false специальные ключевые слова в JS, и не нуждаются в кавычках. var myVariable = true;
    Массив, который позволяет хранить несколько значений в одной ссылке. var myVariable = ;
    Обратиться к каждому элементу массива можно так:
    myVariable , myVariable , и т.д.
    В принципе, что угодно. Все в JavaScript является объектом, и может храниться в переменной. Имейте это в виду, пока вы учитесь. var myVariable = document.querySelector("h1");
    Все это из вышеприведённых примеров.

    Так для чего нам нужны переменные? Что ж, переменные должны были сделать что-нибудь интересное в программировании. Если значения не могли бы изменяться, то вы не могли бы ничего сделать динамическим, например, персонализировать приветственное сообщение или сменить изображение, отображаемое в галерее изображений.

    Комментарии

    Вы можете поместить комментарии в JavaScript код, так же как вы делали это в CSS:

    /* Всё, что находится тут - комментарий. */

    Если ваш комментарий не содержит переноса строк, то зачастую легче поставить две косые черты, как тут:

    // Это комментарий

    Операторы

    Примечание : Смешивание типов данных может привести к некоторым неожиданным результатам при выполнении вычислений, поэтому будьте осторожны, правильно ссылайтесь на ваши переменные, чтобы получать ожидаемые результаты. Например, введите "35" + "25" в вашу консоль. Почему вы не получили результат, который вы ожидали? Потому, что кавычки превратили числа в строки, так что у вас в итоге получилась конкатенация строк, а не сложение чисел. Если вы введёте, 35 + 25 , то получите правильный результат.

    Условия

    Условия - это кодовые структуры, которые позволяют вам проверять, истинно или ложно выражение, а затем выполнить другой код в зависимости от результата. Самая распространенная форма условия называется, if ... else . Например:

    Var iceCream = "chocolate"; if (iceCream === "chocolate") { alert("Yay, I love chocolate ice cream!"); } else { alert("Awwww, but chocolate is my favorite..."); }

    Выражение внутри if (...) - это проверка, которая использует тождественный оператор (как описано выше), чтобы сравнить переменную iceCream со строкой chocolate и увидеть равны ли они. Если это сравнение возвращает true , выполнится первый блок кода. Если нет, этот код пропустится и выполнится второй блок кода, после инструкции else .

    Функции События

    Для создания действительной интерактивности на веб-сайте вам необходимы события. События - это структура, которая слушает то, что происходит в браузере, а затем позволяет вам запускать код в ответ на это. Наиболее очевидным является событие клика , которое вызывается браузером, когда мы щёлкаем по чему-то мышью. Для демонстрации этого события введите следующую команду в вашу консоль, а затем щёлкните по текущей веб-странице:

    Document.querySelector("html").onclick = function() { alert("Ouch! Stop poking me!"); }

    Существуют множество способов прикрепить событие к элементу. Здесь мы выбираем элемент и устанавливаем ему обработчик свойства onclick анонимной функцией (т.е. безымянной) которая содержит код, который мы хотим запустить для события клика.

    Обратите внимание, что

    Document.querySelector("html").onclick = function() {};

    эквивалентно

    Var myHTML = document.querySelector("html"); myHTML.onclick = function() {};

    Просто так короче.

    Прокачаем пример нашего веб-сайта

    Теперь, когда мы прошли некоторые основы JavaScript, давайте добавим несколько крутых несложных функций в пример нашего сайта, чтобы дать вам некоторое представление о принципах работы.

    Добавление смены изображения

    В этом разделе мы добавим ещё одно изображение на наш сайт и добавим некоторый простой JavaScript для переключения между двумя изображениями, когда по ним щелкнули.

  • В первую очередь найдите другое изображение, которые вы хотели бы показать на вашем сайте. Убедитесь что оно такого же размера, как ваше первое изображение или максимально близкое к нему.
  • Сохраните изображение в вашу папку images .
  • Переименуйте это изображение в "firefox2.png" (без кавычек).
  • Перейдите в ваш файл main.js и введите следующий JavaScript. (Если ваш "hello world" JavaScript по-прежнему существует, удалите его.) 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"); } }
  • Сохраните все файлы и загрузите index.html в браузере. Теперь, когда вы щёлкните по изображению, оно должно измениться на другое!
  • Итак, мы сохраняем ссылку на наш элемент в переменной myImage . Далее, мы создаём этой переменной обработчик события onclick с анонимной функцией. Теперь, каждый раз, когда на этот элемент изображения щёлкнут:

  • Мы получаем значение из атрибута src изображения.
  • Мы используем условие для проверки значения src, равен ли путь к исходному изображению:
  • Если это так, мы меняем значение src на путь ко 2-му изображению, заставляя другое изображение загружаться внутри элемента .
  • Если это не так (значит, оно должно было уже измениться), мы меняем значение src , возвращаясь к первоначальному пути изображения, каким он был изначально.
  • Добавление персонального приветственного сообщения

    Далее мы добавим немного другого кода, чтобы изменить заголовок страницы на персонализированное приветственное сообщение, когда пользователь впервые зайдет на сайт. Это приветственное сообщение будет сохраняться, когда пользователь покинет сайт, а позже вернется - мы сохраним его с помощью . Мы также включим возможность изменить пользователя и, следовательно, приветственное сообщение, в любое время, когда это будет необходимо.

  • В index.html , добавьте следующую строку перед элементом : Change user
  • В main.js , добавьте следующий код в конец файла, точно так, как написано - он захватит ссылки на новую кнопку и заголовок, и сохранит их в переменные: var myButton = document.querySelector("button"); var myHeading = document.querySelector("h1");
  • Теперь добавьте следующую функцию для установки персонализированного приветствия - она ничего не будет делать, но мы будем использовать её позже: function setUserName() { var myName = prompt("Please enter your name."); localStorage.setItem("name", myName); myHeading.innerHTML = "Mozilla is cool, " + myName; } Эта функция содержит функцию prompt() , которая вызывает диалоговое окно, немного похожее на alert() кроме того, что prompt() просит пользователя ввести некоторые данные, и сохраняет эти данные в переменной, после того как пользователь нажимает OK . В данном случае, мы просим пользователя ввести его имя. Далее, мы вызываем API под названием localStorage , который позволяет нам хранить данные в браузере и извлекать их позднее. Мы используем функцию setItem() из localStorage для создания и хранения данных в свойстве под названием "name" , и устанавливаем это значение в переменную myName , которая содержит имя введенное пользователем. В конце мы устанавливаем textContent заголовку в виде строки и имени пользователя.
  • Затем добавьте блок if ... else - мы могли бы назвать это кодом инициализации, поскольку он структурирует приложение при его первой загрузке: if(!localStorage.getItem("name")) { setUserName(); } else { var storedName = localStorage.getItem("name"); myHeading.innerHTML = "Mozilla is cool, " + storedName; } Этот блок сначала использует оператор отрицания (логическое НЕ, представленное в виде!) чтобы проверить, существуют ли данные в пункте name . Если нет, то функция setUserName() запускается для их создания. Если данные существуют (то есть, пользователь установил его во время предыдущего посещения), мы извлекаем сохраненное имя, с помощью getItem() и устанавливаем textContent заголовку в виде строки плюс имя пользователя, так же, как мы делали внутри setUserName() .
  • Наконец, установите обработчик события onclick на кнопку. При нажатии кнопки запускается функция setUserName() . Это позволяет пользователю установить новое имя, всякий раз, когда он захочет, нажатием кнопки: myButton.onclick = function() { setUserName(); }
  • Теперь, когда вы впервые заходите на сайт, он попросит вас указать имя пользователя, а затем предоставит вам персональное сообщение. Вы можете изменить имя в любое время, нажав на кнопку. В качестве дополнительного бонуса, поскольку имя хранится внутри localStorage, оно сохраняется после закрытия сайта, сохраняя при этом персонализированное сообщение при следующем открытии сайта!

    Заключение

    Javascript - это язык программирования, который встраивается в html код веб страниц для увеличения функциональности сайта. Javascript был разработан фирмой Netscape в сотрудничестве с Sun Microsystems на базе языка Sun"s Java. Java скрипты выполняются на стороне клиента, хотя изначально Liveware - прародитель Java Script, являлся серверным языком программирования.
    С помощью JavaScript создаются красивые интерактивные веб страницы , чего нельзя сделать в чистом html языке. Как правило скрипты выполняются после того, как пользователь предпримет какие-либо действия: наведение курсора, клик и т.д. Java script может выполняться и при загрузке веб страницы.

    Писать Java скрипт можно при помощи любого текстового редактора: блокнот, Notepad++, Dreamweaver . В последнем, кроме подсветки кода и подсказок реализована проверка синтаксиса написания javascript"а. Но для этого нужно знать язык, принцип написания функций, методы, свойства и т. д. А для просмотра понадобится только браузер, способный обрабатывать ява скрипты. Например, Mozilla Firefox со встроенным дополнением Firebug, при помощи которого можно просматривать работу самого javascript"а и Microsoft Internet Explorer (так как эти два браузера по-разному воспринимают javascript).
    Кстати, не все скрипты одинаково отображаются в браузерах. Большая часть Java скриптов, которые можно скачать бесплатно в интернете «браузер опера до версии 12.16» вообще не поддерживает. При этом работа JS ни как не зависит от операционной системы: будь то Андроид, iOS, Windows или другие.

    Скачать готовый код JavaScript.

    Ниже представлены готовые Java скрипты , которые Вы можете
    скачать совершенно бесплатно и украсить ими свой сайт .

    Размещение Javascript.

    Javascript-код может размещаться, как на самой странице, так и в отдельном файле.


    Пример размещения готового кода Javascript внутри HTML.

    Сценарии, написанные на языке javascript, могут располагаться на самой html-странице между тегами , которые в свою очередь обычно находятся в тегах . У тега должен быть указан единственный параметр " type" , который и указывает тип написания скрипта:

    Теоретически теги могут располагаться и в теле документа (в тегах ). Выполняться такой сценарий будет тогда, когда браузер "дочитает" страницу до этого места (до тегов ).

    Если Вы не знаете язык Java script , то Вы можете бесплатно скачать готовый код скрипта и разместить его согласно выше описанному на своём сайте.

    Пример размещения готового кода Javascript в отдельном файле.

    Создаём в любом текстовом редакторе страницу и сохраняем её как ....... .js . Далее скачиваем готовый Javascript код и помещаем в эту страницу. Сохраняем в той же папке, где и HTML. Теперь необходимо подключить Java скрипт к html странице. Для этого в HTML файле делаем соответствующую запись:


    src="путь к файлу.... .js".
    Теперь остаются только в нужном месте web страницы вызвать функцию, в которой описаны необходимые действия

    имя функции - выполняется при загрузке страницы

    ссылка - javascript будет выполняться при клике по ссылке.

    Событие onLoad

    Событие происходит после загрузки какого-либо елемента страницы.

    Событие onClick

    Событие происходит после щелчка мыши.

    Событие onMouseover

    Событие происходит после наведения курсора на определенный объект страницы.

    Событие onMouseout

    Событие происходит в тех случаях, когда курсор мыши уходит с объекта.



    
    Top