Двойное выполнение

Двойное выполнение

Остается одна маленькая неприятность (кто сказал, что будет легко?). Поскольку мы устанавливаем событие onload для всех (оставшихся) браузеров, то init сработает дважды — в IE и Firefox. Чтобы это обойти, нам нужно сообщить функции, что она должна выполняться только один раз. Итак, наш метод init будет выглядеть примерно так:

function init() {

// выходим, если функция уже выполнялась

if (arguments.callee.done) return;

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

arguments.callee.done = true;

// что-нибудь делаем

};

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Параллельное выполнение CLR

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Параллельное выполнение CLR "Копнув" чуть глубже, мы увидим, что платформа .NET поддерживает параллельное выполнение, т.е. на одной машине можно установить несколько версий платформы .NET (во время создания этой книги были доступны версии 1.0.1.1 и 2.0). Сам файл mscoree.dll размещается в


Выполнение команд

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Выполнение команд До сих пор мы только указывали свойства и параметры объекта Command, но не выполняли эти команды. Существует три стандартных способа выполнения команд для объекта Command и один способ для объекта SqlCommand.• Метод ExecuteNonQuery. Выполняет команду SQL и не возвращает


Дмитрий Вибе: Двойное назначение Дмитрий Вибе

Из книги Цифровой журнал «Компьютерра» № 109 [20.02.2012 — 26.02.2012] автора Журнал «Компьютерра»

Дмитрий Вибе: Двойное назначение Дмитрий Вибе Опубликовано 24 февраля 2012 года Баллистическую ракету, которая летит в твою сторону, хочется увидеть как можно раньше. Благодаря этому простому и понятному желанию уже многие десятилетия уверенно


if - Выполнение или не выполнение предложений в зависимости от условий

Из книги Справочник по Flash автора Коллектив авторов

if - Выполнение или не выполнение предложений в зависимости от условий ifПозволяет выполнить или не выполняет определенные предложения в зависимости от заданного условияСинтаксис:if (condition) { statements}Аргументы:В целом, предложение if завершается закрывающей фигурной скобкой


Выполнение преобразования

Из книги Технология XSLT автора Валиков Алексей Николаевич

Выполнение преобразования Несмотря на полную свободу в порядке выполнения шаблонов, правила изменения контекста и компоновки результирующего дерева, спецификация XSLT оговаривает очень четко — это делает XSLT весьма гибким языком, программы на котором при этом


Дмитрий Вибе: Двойное назначение

Из книги Компьютерра PDA N160 (18.02.2012-24.02.2012) автора Журнал «Компьютерра»

Дмитрий Вибе: Двойное назначение Автор: Дмитрий ВибеОпубликовано 24 февраля 2012 годаБаллистическую ракету, которая летит в твою сторону, хочется увидеть как можно раньше. Благодаря этому простому и понятному желанию уже многие десятилетия уверенно держатся на плаву


Выполнение макросов

Из книги VBA для чайников автора Каммингс Стив

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


Выполнение макроса

Из книги MySQL 5.0. Библиотека программиста автора Гольцман Виктор Иосифович

Выполнение макроса Запуск макроса из диалогового окна Макрос вряд ли можно назвать большим достижением.Выполняемая при этом последовательность шагов должна быть такой.1. Выберите макрос из списка ниже поля Имя.2. Щелкните на кнопке Выполнить.Ну как, круто? Как


2.1. Выполнение SQL-команд

Из книги КОМПАС-3D для студентов и школьников. Черчение, информатика, геометрия автора Большаков Владимир

2.1. Выполнение SQL-команд Прежде чем выполнять SQL-команды, необходимо подключиться к работающему серверу MySQL (как это сделать, рассказывалось в главе 1). В этом разделе вы узнаете, как создавать SQL-команды и передавать их серверу для выполнения.Если вы используете командную


4.6. Выполнение разрезов

Из книги Фундаментальные алгоритмы и структуры данных в Delphi автора Бакнелл Джулиан М.

4.6. Выполнение разрезов Рассмотрим особенности выполнения задания 6, которое ориентировано на применение знаний ГОСТа 2.305-68, 2.311-68, 2.316-68. Тематический блок по указанной теме включает 4 задачи по дочерчиванию изображений деталей. Для графического выполнения этих задач


Двойное хеширование

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Двойное хеширование В заключение рассмотрим двойное хеширование (double hashing). На практике эта схема оказывается наиболее удачной из всех альтернативных схем с открытой адресацией. Итак, выполним хеширование ключа элемента в значение индекса. Назовем его h(_1_). Выполним


Выполнение копирования

Из книги Раскрутка: секреты эффективного продвижения сайтов автора Евдокимов Николай Семенович

Выполнение копирования Для вызова gbak или перейдите в каталог Firebird /bin, где размещается gbak, или укажите для утилиты полный путь. Вся команда должна размещаться в одной строке. В описании синтаксиса и примерах логически замкнутые части команды представлены в виде отдельных


Уловки SEO — агентств: двойное дно, тройной прайс

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Уловки SEO — агентств: двойное дно, тройной прайс Случается, даже имеющие недурную репутацию SEO — агентства допускают нечистоплотность при заключении договоренностей с клиентами. Иногда такова политика компании в целом, иногда на обман решается «паршивая овца в стаде» –


Выполнение тестов

Из книги автора

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