- •Другие элементы:
- •Кликабельные карты
- •Формы и элементы управления формы
- •Табличная верстка
- •Способ интеграции css в страницу
- •Группы стилей
- •Правила задания селекторов:
- •2.Стили текста
- •4.Отступы и позиционирование
- •Габариты объекта
- •Позиционирование
- •Стили стандарта css2
- •1.Стили шрифта
- •Плавающая модель
- •Видимость
- •Способ верстки с помощью абсолютного позиционирования
- •Псевдоклассы
- •1.Строки
- •3.Массивы
- •5.Работа с датой и временем
- •Объектная модель браузера
- •Таймеры
- •Структура заголовка ответа
- •Параметры запросов/ответов
- •Передача параметров:
- •2.Переменнтые окружения cgi
- •1.Архитектура вызова
- •Преобразование типов
- •Массивы
1.Строки
Операция конкатенации
var a=b+c;
Класс String
Все переменные которые принимают строковое значение соответствуют типу string.
length
методы:
обрезка строки
substr(ind a, ind b)
substring(ind a, len)
поиск подстроки
indexOF(str)
lastIndexOf(str)
toLower(str)
toUpper(str)
2. Math
Math.abs(a)
sqrt
pow(a,p)
sin
cos
tan
asin
acos
atan – параметр в радианах
exp
log -> ln
ceil – округление в большую
floor – в меньшую
round – по правилам
min max
константы
LN2, LN10
E
PI
SQRT2
3.Массивы
Существуют только одномерные массивы.
Многомерные массивы могут быть созданы только ломанными.
var a= new Array();
var a= new Array(2,2,2,3,4);
var a= new Array(1, “abc”, 3);
for( var j=0; j<a.length, j++)
a[j]= new Array();
a[i][j]
Методы
join – объеденяет все элементы через пробел
reverse()
sort()
push(val)
pop()
5.Работа с датой и временем
Date
var dt= new Date();
получает при инициализации текущую дату и время на локальном компьютере
dt=new Date(“Desember 25,2012 13:00:00”);
Методы
GetDay - SetDay
GetMonth
GetHours
GetMinutes
GetSeconds
ToLocaleString
Объектная модель браузера
Document Object Model – спецификация на представление документов. Не путать с объектной моделью браузера
1))
Object Window
В коде на странице можно напрямую обращатся к объектам window. но желательно писать через ссылки.
close(); - закрыть текущее окно (закладку)
open(); - открытие окна
пример:
var w1= window.open(“Name”, “Title”, “width=500, height=500,scrollbars=yes, toolbars=yes, status=no, menubar=no, …”);
alert(text) – выводит окно с текстом
conform() – модальное окно с «да и нет» выбором пользователя
prompt() – модальное окно с полем ввода строки и кнопками выбора
print() – отправляет текущую страницу на печать
пример
<a href=”#” oneclick=”window.print()”>text link</a>
Изменение размеров и позиции окна
scroll(w,h)
scrollTo(x,y), scrollBy(w,h)
resizeTo()
resizeBy( )
moveTo()
moveBy()
blur() – снять фокус
focus() – установить фокус
Таймеры
Существуют таймауты и интервальные таймеры
setTimeout(“operation”,period)
clearTimeout
setInterval
clearInterval
при создании возвращается переменная на таймер, которую нужно передавать как параметр при удалении.
<script type=”text/javascript”>
function sn()
{
alert(“ прошло 3 секунды”);
}
function GoTm()
{
var interval=3000;
setTimeout(“sn()”, interval);
}
window.onload = function()
{
GoTm();
}
Object Novigator
предоставляет информацию о версии браузера
appName
appVersion
userAgent
24.02.14
Object Document
Представляет область просмотра, то есть загруженный документ в браузере.
Методы:
.getElementById(“Id.element”);
.forms
.images
.frames
.links
Данные объекты в первую очередь являются массивами с целочисленными индексами, через которые итеративным образом можно перебрать однотипные элементы на странице.
.title – текст заголовка страницы
.referrer – url страницы, с которой отправлены данные.
.coockie – строка, которая содержит cookie для данного сайта.
.write
.writeln
.clear
Object Location –представляет собой адресную строку браузера
.href –текущий url адрес в адресной строке, смена его приводит к переходу на траницу.
reload(bool)
bool- вычитывать ли из кеша, или с сервера
replace – как редирект но не записывается в историю
protocol
hostname
port
pathname
host
Object History
.back() – на шаг назад
.forvard() – на один шаг вперед
.go(n) – смешение на несколько шагов по истории, может принимать отрицательный параметр.
.length – общее количество елементов в истории.
Object Image
var i1= new Image();
i1.src = “http://no.com/map.jpg”;
Forms
у формы есть событие onsubmit. если обработчик возвращает false , отправка отменяется
Преобразование чисел в строки и обратно
.parseInt();
.prseFloat();
если не успешно, будет возвращено NaN
if(isNaN(perem)){}
Доступ к css стилям на js
<p style=”text-decoration: underline;”>
obj.style.textDecoration = “underline”;
.widht=”234px”;
только для локально указанных стилей, которые заданны объекту.
Регулярные выражения.
RegExp
var r1=new RegExp(“…”,”ключи”);
r2=/../../ключи
i – регистронечуствителные
g – глобальный поиск
. – любой символ
\. – символ «.»
^ - символ начала строки
& - символ конца строки
[..] – множество символов [abc-f] – слитно!
[^..] – все кроме
? – или есть или нет {n,m}
+ - один и более раз {n,}
* - ноль и более раз {n}
03.03.14
Абривиатуры для множеств
[0-9] = \d
[^0-9] = \D
\s – пробельные символы
[a-zA-Z0-9_] = \w
\b – символы границы между слов
\n \t
\0… \x… – восьмиричная и шестнадцатиричная системы исчисления
д(ень|ня|ней) – вариант выбора
(усл?да:нет)
Проверить ввод домена
/^(http://|https://)?[a-zA-Z0-9\-\.]+\.[a-zA-Z0-9\]{2,}$/
Дата
/[0-3]?[1-9]\s(января|февраля|марта|апреля|мая|июня|июля|августа|)\s[1-2][1-9]{3}
Функции проверки регулярных выражений
re=’/[0-9]+/i’;
re= new RegExp(’/[0-9]+’,’i’);
var str=’123’;
re.test(str);
str.match(re);
Функции js
function name(){}
a.f1 = function(){}
можно описывать именованные и не именованные функции.
this.arguments – массив аргументов
Программная анимация
1.откуда, куда
2.период
3.FPS – количество кадров в секунду
4.алгаритм движения
Суть программной анимации всегда сводится к приблизительно следующему алгоритму:
1.В зависимости от FPS рассчитывается период между кадрами. 1000/FPS – передаем в TimeOut()
2.Запоминается время начала анимации
3.Запускается «интервальный таймер», где отработка события таймера будет соответствовать прорисовке каждого кадра анимации.
4.При каждой отработке таймера получается текущее время, и рассчитывается время, прошедшее с начала анимации. И в зависимости от значения периода рассчитывается процент (коэффициент) выполнения анимации.
5.Передавая начальную и конечную координаты и процент пройденного пути, функции, отвечающей за алгоритм движения, рассчитывается текущая позиция объекта, в зависимости от алгоритма движения.
17.03.14
Протокол HTTP
HTTP – Hyper Text Transfer Protocol (rfc 2068)
Протокол – набор правил, по которому выполняется обмен данными.
HTTP – текстовый протокол, то есть запрос и ответ в виде текста (набор строк). Исходя из этого возникает проблема в отправке двоичных данных, в них могут присутствовать непечатные символы. Эта проблема решается с помощью избыточного кодирования, как правило base64 (5to8).
Структура запроса и ответа
Строка 1 - Заголовок
Параметр 1 запроса/ответа
Параметр 2 -//-//-
Параметр N -//-//-
(пустая строка)
[тело ответа/запроса]
Структура заголовка запроса
Состоит из трех составляющих:
Метод URL Версия_протокола
URL – может быть указан либо с доменом, либо без домена. В случае если указан без домена, то надо указывать параметр Host с указанием домена.
Методы:
[GET, POST, HEAD] – для запроса данных
[DELETE, PUT] – для управления данными
[OPTIONS, TRASE] – для конфигурации и отладки
DELETE – удалить файл на сервере
PUT – залить файл на сервер
OPTIONS – получить возможность на сервере
TRASE – получить данные для отладки
GET – запрашивается ресурс и возможные параметры скрипту передаются в заголовке запроса.
HEAD – как GET, только не возвращается тело документа.
POST – способ запроса ресурса с передачей ему параметров в теле запроса.
Так как на заголовок есть ограничение на размер, то не всегда с помощью GET запроса можно передать необходимый объем данных на сервер. Тогда используют POST.
