То, что мыслимо, то осуществимо.
Мао Цзе-Дун
Когда я включаю компьютер, первым делом рука сама тянется к заветному значку доступа в интернет. И если телефон не отключили в очередной раз за неуплату или у провайдера неожиданно не сгорел центральный сервер, то мое желание оказывается удовлетворенным — в нижнем правом углу экрана появляются симпатичные подмигивающие мониторчики. Традиционный запуск ICQ, проверка почты, прочие формальности, и вот приходит время интернет-серфинга — хождения по разным сайтам.
Конечно, многие вполне привыкли к тому, что по включении браузера открывается пустая страничка с популярным адресом about: blank (или — «Пустая страница» для пользователей Opera). Потом они мучительно вспоминают, куда же хотели сегодня пойти. И позже корят себя за то, что куда-то не попали по вине своей дырявой памяти или потерявшейся бумажки с адресом.
А ведь эту проблему можно и нужно решить. Достаточно сделать себе стартовую страничку, которая не только поможет нам сделать все нужное во время очередного визита во всемирную сеть (что очень актуально для тех, кто пользуется модемами) — посетить необходимые сайты, узнать последние новости, хотя бы просто поиграть. При желании вы сможете выразить ее внешним видом свою индивидуальность, мироощущение. Начинаем?
Делаем страницу стартовой |
Само наличие готовой стартовой страницы — это, конечно, большая часть дела, но ведь нужно еще договориться с браузером, чтобы он каждый раз при запуске открывал именно ее. Вот как происходят переговоры: Для Internet Explorer’а: «Сервис/ Свойства обозревателя…». В первом же окошке задается нужный адрес. Для Opera: «Инструменты/ Настройки…». В выпадающем списке «Запуск» выбирайте «Начать с домашней страницы», строкой ниже — вводите нужный адрес. Можно выбрать вариант «Продолжить с места разъединения», тогда после повторного запуска браузер автоматически загрузит последние открытые страницы. |
Интернет — все уже готово
Начнем с тех, кому не хочется ничего создавать самому. Специально для них любая поисковая система на запрос «стартовая страница» выдаст множество готовых вариантов вроде YaMail.ru. Удобная стартовая страница для входа в интернет. Вход в почтовую систему Mail.ru. Все рубрики каталога Rambler.ru. Поиск через популярные русские поисковые системы Yandex, Rambler, Aport — так описывают эту страничку создатели. Как видите, ничего на этой страничке вам изменить не удастся, а то, что уже имеется, устроит далеко не каждого пользователя. К примеру, для себя я увидел на этой страничке всего один полезный пункт — курс валют. Электронную почту удобнее проверять при помощи специальных программ, для поиска в интернете лучше подойдет мини-страничка www.ya.ru.
+ Для создания стартовой страницы вообще не нужно себя утруждать.
– Результат вряд ли вас всесторонне устроит, на странице много рекламы.
Интернет — специально для пользователя
Для примера возьмем сайт www.starting.ru. Как утверждают создатели, «проект является попыткой воплощения мечты интернет-пользователя — создания идеальной стартовой страницы». Начальное меню действительно выглядит всесторонне развитым, но мы сразу пройдем дальше — по ссылке «Создать тематическую страницу», туда, где для пользователя разрабатывается его личный вариант. После прохождения нехитрой регистрации вам придется самому рассортировывать нужные ссылки по разделам. Как бы то ни было, в итоге под ваши ссылки будет отведена лишь половина страницы — остальное место все равно занимают пункты вроде «проверка электронной почты», курсы валют и т.п. Основательно изменить стиль вам не разрешат, поэтому придется довольствоваться тем, что есть. Интересный вариант — ознакомиться с теми страницами, которые создали другие пользователи. Есть несколько узкотематических страниц вроде http://starting.ru/f1/, которая целиком и полностью посвящена Формуле-1. Весьма полезные ссылки для интересующихся, но ставить такую страницу в качестве стартовой лично я бы не стал. Один из пользователей создал страничку на игровую тематику http://starting.ru/games/ — это уже ближе к идеалу, но ее наполнение, к сожалению, оставляет желать лучшего…
+ Относительно быстро, без особых усилий, создаем коллекцию тематических ссылок для себя и других пользователей сети.
– Коллекция ссылок и ничего больше. Ну, почту еще проверить с этой страницы дадут…
Специальные программы
Как и почти для любой задачи, для создания стартовых страниц даже написаны специальные программы. Мы рассмотрим программу SurfXpert, которую вы найдете на нашем диске.
Создание страницы выполняется за нескольких шагов — вы поочередно выбираете, какие модули хотите задействовать. Хотите каждый раз, заходя на страницу, видеть забавную цитату — ставьте рядом с этим пунктом галочку. Интересуетесь последними новостями компьютерного мира — включайте и этот модуль. Не испытываете никакого интереса к новинкам кинопроката — убирайте соответствующую галочку… В результате на вашей стартовой странице не останется ничего лишнего. При запуске полученной странички разделы тут же пытаются обновиться через интернет, если им это не удается, соответствующие рубрики остаются пустующими.
+ Вы получите именно ту страницу, о которой только могли мечтать.
– Модулям свойственно устаревать, поэтому приготовьтесь к постоянным обновлениям…
Своими руками
Можно не прибегать ни к чьей помощи, а создать стартовую страницу собственными руками. Ни у кого больше не будет точно такой же странички — все ограничивается только вашим воображением и талантом.
При создании стартовой страницы важно учесть то, что храниться она будет на локальном диске. Можно нарисовать ваше произведение в Word’е и сохранить его как HTML — главное, чтобы получилось красиво и радовало глаз. Нет необходимости оптимизировать код, редактировать страничку при помощи блокнота, выигрывая пару сотен байт, — все равно чтение с диска на более-менее современной системе произойдет мгновенно.
Если делать страничку самому, то перед вами огромный простор для творчества. Вот примерный список актуальных пунктов:
В виде маленьких значков создать меню для быстрого запуска игр. Вариант — сетевых игр (мы же в интернете). Еще лучше — браузерных. Можно расположить где-нибудь внизу странички свой логотип (как вариант — своего клана в любимой игре) — никто не отменял маленький культ личности, а если вы решите распространять свою страничку между другими пользователями, то подобный copyright будет очень даже к месту. По необходимости поместите на страничке текущие дату и время (если часто забываете или если панель задач со стандартными часами Windows у вас прячется за пределами экрана). Можно создать для себя список напоминаний и тоже поместить его на стартовой странице. Если вам нравится, можете прикрутить к своей страничке разнообразные Java-скрипты. Например, какой-нибудь персонаж, летающий за указателем мышки, или же знаменитые падающие снежинки (классно смотрится под Новый год). Ссылки вида mailto: для быстрого создания писем. Раз уж мы с вами игроки, вполне актуальным будет таймер финального отсчета до выхода, скажем, S.T.A.L.K.E.R.’а…При наличии дизайнерских способностей можно оформить всю страницу в духе какой-либо игры, к примеру, того же S.T.A.L.K.E.R.’а. Кровососы скрываются в тени деревьев, по небу движутся облака, а на третьем энергоблоке ядовитым цветом написано «до выхода осталось…». В траве прячутся ссылки на официальный сайт и множество фанатских. Тут же неподалеку расположились вырезки из интервью с разработчиками и самые последние новости о процессе разработки…
+ Неограниченный простор для творчества. При желании можно как превратить страницу в шедевр, посвященный компьютерной игре, так и создать тихую, уютную рабочую обстановку.
– Чтобы уметь обращаться с тем же JavaScript, нужны определенные знания.
JavaScript: первое знакомство | ||||||
Если в освоении HTML-редактора для создания стартовой страницы нет ничего сложного (опять же — не нужно считать каждый лишний байт объема, открыта полная свобода творчества), то первая встреча с JavaScript и попытка использовать их в своей странице может создать определенные проблемы для неподготовленного пользователя. В скромных рамках данного материала сложно отразить все хитрости общения с ними, однако на помощь может прийти все тот же интернет. На запрос типа «коллекция JavaScript» Яндекс моментально выдает множество страниц, где авторы совершенно безвозмездно отдают в пользование наработки, которые пригодятся вам в процессе разработки личной стартовой страницы. Как правило, они приводят множество решений самых разнообразных задач — «идущие часики», «изменение фона документа» и прочего. Читатель может самостоятельно подобрать и украсить свою страницу практически любой подобной изюминкой. Мы расскажем об основных принципах. Это важно: далеко не всем скриптам, размещенным в сети, стоит доверять. Так что перед использованием попытайтесь все-таки понять, что тот или иной скрипт делает. Во-первых, JavaScript — это язык, выполняющийся на «клиентской стороне», то есть его код загружается вместе с кодом страницы в браузер компьютера посетителя сайта и запускается уже на нем. Во-вторых, во всех случаях JavaScript применяется только для оживления уже готовой страницы — как правило, для создания более удобного интерфейса. Его задачи исключительно вспомогательные и не должны мешать главному — получению информации посетителем. Каждый кусочек кода надо обрамлять тегами . Раньше рекомендовали еще и HTML-комментарии добавлять, но сейчас этим уже вполне можно пренебречь. Между этими тегами помещается собственно код. Любимый первоначальный пример с сообщением пользователю Hello world! можно написать вот так: alert("Hello world!"); В JavaScript есть переменные: var message="Hello world!"; alert(message); Есть массивы и циклы: var messages=["Hello world!","My name is JavaScript","How are you?"]; for (var i=0; i< messages.length; i++) { alert(messages); } Есть условный оператор: var messages=["Hello world!","My name is JavaScript","How ar[--bunned--]e you?"]; for (var i=0; i< messages.length; i++) { if (messages.indexOf(‘[--bunned--]’) == -1) { alert(messages); } } Более подробно об основных операторах языка вы сможете прочитать, например, в любимом мной справочнике веб-разработчика http://wdh.suncloud.ru/. С точки зрения JavaScript любая страница описывается как набор объектов. Например, существует объект document, создаваемый автоматически и соответствующий загруженному в браузер HTML-документу, объект window, соответствующий окну браузера или текущему фрейму. Однотипные объекты объединяются в коллекции — так, у объекта document есть коллекция объектов forms, соответствующая всем формам, присутствующим на странице. В результате конструкция document['forms']['WorkForm1']['Message'], несмотря на угрожающий вид, всего-навсего возвращает значение поля с именем Message из формы с оригинальным именем WorkForm1. Вообще, объектная модель JavaScript достаточно богата — объекты соответствуют формам и элементам форм, картинкам, гиперссылкам. Часть объектов ничему на странице не соответствует — так, объекты типа Date инкапсулируют работу с датами и позволяют получить, например, текущий год или день недели. var current_date = new Date(); document.writeln("Сейчас "+ current_date.getYear()+" год!"); Все объекты, соответствующие чему-либо на странице, можно заставить реагировать на различные события — как правило, действия пользователя вроде перемещения мыши (onmousein, onmouseout) или щелчка любой из ее кнопок (onclick, ondoubleclick), выбора пункта в выпадающем меню или ввода текста (onchange). Но некоторые события от пользователя не зависят — например, загрузка или выгрузка страницы (onload, onunload). Это — проблема: в разных браузерах, да и в разных версиях одного и того же браузера один и тот же код может работать по-разному — из-за разной объектной модели. Рассмотрим сравнительно простую задачу — проверку введенных в форму данных на корректность. Это важно: на сервере полученные данные все равно придется проверять еще раз — злоумышленник может легко обойти все эти проверки. Помогут они, в основном, от человека неаккуратного. Разделим задачу на две подзадачи: хранение правил корректности ввода данных и их обработка Для начала определим пакет функций-правил, каждая из которых отвечает за единственную проверку введенного значения. function CheckFunctions () { //короткий текст /* Определим скрытое свойство, в котором будет хранится максимальная длина короткого текста: */ var MaxSizeOfShortText=128; /* ...и функцию, которая будет осуществлять проверку на то, является ли исследуемый текст коротким, т.е. по длине не большим чем MaxSizeOfShortText */ this.TheShortText=function(Field) { return ((Field.value+'').length<=MaxSizeOfShortText) } /* Теперь напишем еще два метода для чтения/записи скрытого параметра MaxSizeOfShortText */ this.GetMaxSizeOfShortText=function() { return MaxSizeOfShortText; } this.SetMaxSizeOfShortText=function(NewValue) { MaxSizeOfShortText=NewValue; } //Примерно то же самое для длинного текста: var MaxSizeOfLongText=1024; this.TheLongText=function (Field) { return ((Field.value+'').length<=MaxSizeOfLongText) } this.GetMaxSizeOfLongText=function() { return MaxSizeOfLongText; } this.SetMaxSizeOfLongText=function(NewValue) {MaxSizeOfLongText=NewValue } //Проверка на то, что текст вообще введен: this.NotTheEmptyText=function(Field) { return (Field.value!='') } } Обратите внимание на строки, начинающиеся с //, и блоки, начинающиеся с /* и заканчивающиеся */. Это — комментарии, без них разобраться в скрипте будет куда труднее.. Теперь определим объект-обработчик правил, которые пользователь наложил на форму. Каждое правило будет иметь три свойства:
Конструктор обработчика корректности ввода формы function FormChecker() { //Массив правил. var Rules = new Array(); //определим сообщение об ошибке по умолчанию (скрытое свойство) var DefaultErrorMessage = "Ошибка!"; //... открытый метод его переопределения this.SetDefaultErrorMessage=function(NewErrorMessage) { /* если NewErrorMessage пуст или не определен, то сообщение по умолчанию не менять */ DefaultErrorMessage = NewErrorMessage || DefaultErrorMessage; } //... открытый метод его чтения this.GetDefaultErrorMessage=function() { return DefaultErrorMessage; } //открытый метод добавления правил this.AddRule = function (Rule, WorkObject, ErrorMessage) { Rules[Rules.length] = { 'Rule' :Rule, 'WorkObject' :WorkObject, //если сообщение не определено, поставим вместо него системное сообщение 'ErrorMessage' :ErrorMessage || DefaultErrorMessage }; } //открытый метод проверки выполнения всех условий корректности формы this.CheckIt = function (CheckFunctionsSET) { //по умолчанию форма введена корректно var Flag = true; //последовательно проверяем все заявленные правила на корректность. for (var i = 0; i < Rules.length; i++) { //вызываем заранее определенное правило Rules.Rule для объекта //Rules.WorkObject Flag = Flag && CheckFunctionsSET[Rules.Rule](Rules.WorkObject); //Если возникла ошибка, сообщаем об этом пользователю и заканчиваем работу if (Flag==false) { Message(Rules); break; } } //Вернем результат return Flag; } //скрытый метод сообщения пользователю об ошибке function Message(Rule) { alert(Rule.ErrorMessage); Rule.WorkObject.select(); Rule.WorkObject.focus(); } } Теперь — собственно проверяемая форма. Имя формы нам нужно для того, чтобы получить доступ к ее элементам. Будем обрабатывать событие onSubmit, которое возникает при нажатии кнопки «Сохранить» в нашей форме. // получим экземпляр пакета условий var CheckFunctionSET = new CheckFunctions(); // переопределим максимальную длину короткого текста CheckFunctionSET.SetMaxSizeOfShortText(256); // переопределим максимальную длину длинного текста CheckFunctionSET.SetMaxSizeOfLongText(2048); // получим экземпляр класса обработчика условий var Form1Checker = new FormChecker(); // переопределим сообщение об ошибке по умолчанию Form1Checker.SetDefaultErrorMessage("Неправильно заполнено поле!") Form1Checker.AddRule("NotTheEmptyText", document['forms']['WorkForm1']['field1'], "Не забудьте представиться!") Form1Checker.AddRule("TheShortText", document['forms']['WorkForm1']['field1'], "Ваше имя не должно превышать " + CheckFunctionSET.GetMaxSizeOfShortText() + " симв.") Form1Checker.AddRule("NotTheEmptyText", document['forms']['WorkForm1']['Message']) Form1Checker.AddRule("TheLongText", document['forms']['WorkForm1']['Message']) Совет: если форма включает в себя поле пароля, то полезно шифровать пароль, а не отправлять его открытым текстом. Это несложно дописать в ту же функцию проверки формы. Использование JavaScript позволяет строить сколь угодно сложные web-приложения, о чем свидетельствует расцвет веб-приложений Google, Yandex, Mail.ru и других известных компаний. |
Последнее слово
Теперь вы точно решили, какая страница будет вас встречать при загрузке браузера. Постарайтесь уделить ей побольше внимания и сделать все самые необходимые пункты на ваш вкус. Тщательно проработанная стартовая страница может помочь сэкономить как время, проведенное в интернете (если все новости будут загружаться сразу), так и трафик, если вы вдруг не решите повесить на нее какие-нибудь рекламные объявления. Да и забыть что-либо сделать отныне станет намного сложней.