Авторизация


Динамическая загрузка скриптов и callback
0

Динамическая загрузка скриптов и callback

Опубликовал root в блоге JavaScript 28 мая 2011, 01:47
Появилась у меня простенькая задача — после загрузки модулей Снапа вызвать callback функцию. Для Огнелиса и Оперы тупо использовал событие onload. Код примерно такой:


var s = document.createElement( 'script' );
s.src = 'la-la-la.js';
s.onload = function() { .... }

Читать дальше
Техника программирования с использованием флагов
0

Техника программирования с использованием флагов

Опубликовал root в блоге JavaScript 28 мая 2011, 01:44
Программирование на JavaScript имеет один серьезный недостаток — необходимо постоянно думать о совместимости в различных версиях браузера. Очень часто, приходится писать несколько вариантов реализации одного и того же алгоритма. Проверять каждый раз под каким браузером запущен код — занятие нелепое! Удобно в начале выполнения скрипта определить флаги, по которым определять поддерживает браузер то или иное свойство, например, чтобы определить поддерживает ли браузер DOM, вводим такой флаг:
Читать дальше
Наследование в JavaScript
0

Наследование в JavaScript

Опубликовал root в блоге JavaScript 27 мая 2011, 23:32
Широко известный факт, что в JS нет классов, а значит нет наследования. Но при сильном желании можно реализовать механизмы наследования самостоятельно. Например, используя трюки, которые описаны далее.
Читать дальше
Чат на ajax
+2

Чат на ajax

Опубликовал paramon в блоге JavaScript 21 марта 2011, 21:49
Для того чтобы запустить чат на своем сайте достаточно взять готовые скрипты и разместить их у себя на хостинге. Но для нас легких путей не существует, поэтому в данной статье я расскажу о том как работают интернет-чаты, и как можно сделать свой собственный чат. Так как я считаю, что чатом можно назвать только скрипты работающие через Ajax, в статье будет описываться именно этот подход получения данных. В конце статьи я приведу готовые скрипты для организации чата.
Читать дальше
Использование AJAX при создании сайта
0

Использование AJAX при создании сайта

Опубликовал root в блоге JavaScript 25 февраля 2011, 21:21
Данный термин еще очень молод, придумал его Джесс Джеймс Гаррет (Jesse James Garrett). Название говорит, что за основу берется использование JavaScrіpt, а точнее в центре разработки лежит использование объекта языка JavaScrіpt – XMLHttpRequest, который разрешает осуществление запросов к серверу после того, как страница загрузилась. Контакт между клиентом и сервером осуществляется не одновременно, используя ХML представление. Существуют и другие аналогичные объединения как (Asynchronous Java + XML) и (Asynchrounous ActіonScrіpt + SWF).

Есть общность, созданная веб-ориентированными технологиями, которые, объединяясь, дают выход на новый уровень развития веб-технологий.

Основную популяризацию AJAX осуществляет компания Google, которая использует данный подход при создании популярных веб-ресурсов Gmaіl, Google maps и Google suggest, это вызывает интерес среди веб-разработчиков.
Читать дальше
Что такое ajax?
0

Что такое ajax?

Опубликовал root в блоге JavaScript 24 февраля 2011, 22:02
Ajax — это технология асинхронной передачи данных. Такое скупое и непонятное определение Ajax-а выдаст практический любой веб-программист. Но для пониманмя всей значимости данной технологии его будет явно недостаточно. Поэтому я позволю себе дать понятие Ajax в описательной форме.

Итак, Ajax — это когда для отображения страницы не нужно перезагружать страницу, а это в свою очередь значит более быструю работу страницы и меньшие объемы передаваемого трафика.
Читать дальше
Работа с checkbox в jQuery
0

Работа с checkbox в jQuery

Опубликовал root в блоге jQuery 05 марта 2010, 20:19
В данной статье я расскажу о том, как в jquery можно обрабатывать элементы checkbox. В частности будет рассмотрен вопрос получения списка всех элементов checkbox на странице, а так же операции над ними. В конце будут приведены примеры кода на JavaScript.

Читать дальше
Для чего нужен jQuery.fn
0

Для чего нужен jQuery.fn

Опубликовал root в блоге JavaScript 07 февраля 2010, 07:03
Каждый кто сталкивался с написанием собственных плагинов на jQuery задавал вопрос — "В чем различие между объявлением функций через jQuery и jQuery.fn?".

Для того, чтобы ответить на поставленный вопрос приведу два примера.

Пример 1.

jQuery.sayHello = function() {
  alert('Привет! Найдено ' + this.length + 'элементов' );
}

$('div').sayHello(); // ничего не происходит


Пример 2.

jQuery.fn.sayHello = function() {
  alert('Привет! Найдено ' + this.length + 'элементов' );
}

$('div').sayHello(); // Выводит "Привет! найдено ХХ элементов", где ХХ - это количество найденных элементов на странице


Если запустить первый пример, то произойдет одно из двух событий — браузер выдаст ошибку (например, если у Вас установлен FireBug) либо не выдаст ничего. А если запустить второй пример, то на экране появится сообщение о количестве найденных элементов.

Прежде чем делать какие-либо выводы, приведу еще один пример:


jQuery.sayHello = function(elem) {
  alert('Привет! Найдено ' + elem.length + 'элементов' );
}

jQuery.sayHello($('div'));


В данном примере, будет выдано сообщение о количестве найденных объектов.

Думаю теперь у нас достаточно информации, чтобы сделать некоторые выводы:

Вывод 1: Если задать функцию через jQuery.fn, то она будет работать с элементами найденными через функцию $(). Контекст этой функции будет содержать выбранные элементы;

Вывод 2: Если задать функцию через jQuery, то к ней можно обратиться только через глобальный объект jQuery. В таком случае контекст функции будет указывать на глобальный объект window.

Таким образом, если нужно написать плагин, который будет работать только с выбранными объектами, то нужно его создавать в jQuery.fn, а если нам неважно какие элементы страницы были выбраны, то лучше создавать функцию через jQuery.
Подводные камни JavaScript или опасное свойство Semicolon insertion.
0

Подводные камни JavaScript или опасное свойство Semicolon insertion.

Опубликовал root в блоге JavaScript 25 января 2010, 07:19
Я очень люблю язык JavaScript, на мой взгляд его преимущества с лихвой покрывают многочисленные недостатки. Но чтобы писать хорошие программы на этом языке нужно четко понимать какие опасности в нем таятся.

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


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

var a
var b

Во время выполнения он будет преобразован к следующем виду:

var a;
var b;


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

Для примера возьмем следующий код:

function a() {
return 
	false;
}

Не трудно догадаться, что в данной ситуации программист хотел чтобы функция возвращала значение «false». Но на самом деле она возвращает значение «undefined». И это вполне закономерно, потому что реально исполняется совсем другой код:

function a() {
return ; // Обратите внимание JS сам доставил «недостающий» знак точки с запятой
	false;
}

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

Синтаксис JavaScript очень похож на синтаксис языка «Си». Например, для выделения блоков когда в JS как и в «Си» используются фигурные скобки.

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

Первый — это когда открывающая фигурная скобка находится на одном уровне с конструкцией к конторой она относится:
function a() {
	return {
		value: false
	}
}

Второй — когда открывающую скобку помещают на уровень ниже

function a() 
{
	return 
	{
		value: false
	}
}

Не трудно догадаться, что для JavaScript второй вариант пригоден не во всех случаях, в примере выше во время выполнения будет получен следующий код:

function a() 
{
	return ;
	value: 
		false;
}

Обратите внимание, что в этом примере не только прибавились «недостающие» знаки, но и исчезли «лишние» символы фигурных скобок. Поэтому, чтобы избежать проблем в JavaScript, лучше не использовать переносы строк перед открывающей фигурной скобкой.

Конечно, сказанное выше описывает далеко не все возможные ситуации когда Semicolon insertion вызовет проблемы при выполнении кода. Поэтому я приглашаю всех дополнить эту статью своими примерами и мыслями используя для этого комментарии.
Метки: JavaScript
ExtJS. Создаем дерево на основе JSON Data
0

ExtJS. Создаем дерево на основе JSON Data

Опубликовал root в блоге ExtJS 23 ноября 2009, 07:16
С развитием идей RIA (Rich Internet Application) все чаще стали появляться задачи создать не какой-нибудь там веб-сайт, а вполне себе самостоятельное веб-приложение. Хотя насчет веб-приложения, может я и погорячился. Но вот панель управления для какой-либо задачи просят точно. Основой при выполнении подобных заказов служит построение интерфейса (по возможности приятной и дружелюбной наружности). Почему-то закачику глубоко плевать, на красивый во всех отношениях код, а вот на окошечки с менюшечками нет. Ну коли хочется так тому и быть.

Так как я не сторонник изобретать велосипеды, я решил использовать в своих проектах фреймворк ExtJS. Получив при это сразу два плюса: первый — это симпатичный интерфейс, а второй это все тот же симпатичный интерфейс, а так же унификация под один дизайн всех проектов.
Читать дальше
Метки: ExtJS, JavaScript, Tree

Прямой эфир

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