Posts Tagged ‘ javascript

Антиблок Subscribe.ru

Недавно наткнулся я на интересную статью в одной группе в subscribe.ru, но… она оказалась недоступной для пользователя вне группы. Блок – почти что по феншую: черный экран и сообщение типа “давай в группу”. Вспомнив, что когда-то я снимал ограничение с помощью Firebug, я посмеялся над наивностью создателей сервиса и показал другу: убиваем пару тегов и стилей и все, можно читать. А друг посоветовал мне написать скрипт и запостить его в блог. Короче, хватай его:

javascript:var d=document.getElementsByTagName(‘div’),dl=d.length;while(dl–){if(/\bblockUI\b/i.test(d[dl].className)){d[dl].parentNode.removeChild(d[dl]);}}document.body.style.overflow = ‘visible’;void(0);

Выполнен скрипт в виде сниппета и запускается через адресную строку (копируй в нее код, начиная с “javascript:”). Только будь внимателен – некоторые “умные” браузеры любят обрезать “javascript:” в начале строки, поэтому это придется прописать вручную. А можешь еще сделать финт ушами: сохранить страницу в избранное и изменить ее адрес на строку скрипта. Тогда при попытке открытия сохраненной страницы будет убиваться блок Subscribe.

Презентации о javascript

По ссылке можно найти несколько полезных техник создания приложений на javascript. Не поленись в них разобраться – там много интересного.

Музыка для разогрева:

Аудиозапись: Adobe Flash Player (версия 9 или выше) требуется для воспроизведения этой аудиозаписи. Скачать последнюю версию здесь. К тому же, в Вашем браузере должен быть включен JavaScript.

Чем опасен Ajax

Чем опасен Ajax

Случай из практики с моралью скорее для себя.

Занимаюсь сейчас поддержкой одного сайта на Битриксе. Сайт этот верстал и прогал изначально не я, а какой-то другой прогер. Сделал он все на совесть – сайт летал, относительно, конечно, потому что Битрикс. Там был каталог товаров с нафигацией на ajax и возможностью хождения без js, так как ссылки были рабочими. Но чувак не был знаком с history.pushState(), так как в то время эта технология только-только зарождалась. И вот клиенты стали негодовать – как же так, они ходят по каталогу, а кнопка “Назад” ведет не в предыдущую категорию? Пришлось ему убрать ajax. А тут у заказчика еще идея возникла: пусть карточки товара отображаются во всплывающих окнах. Сказано – сделано. Теперь все ссылки ведут на карточки товаров. Пустые. Не, ну правда – чего зря траффик гонять? А вот с этим пришлось разбираться мне, когда обнаружилось, что ссылки с выдачи Яндекса ведут на эти самые карточки товаров.

Поэтому я сделал некоторые выводы на будущее:
- сайт должен работать и без js
- если для навигации используется ajax, надо обязательно проверять, умеет ли браузер работать с history.pushState(). если нет – использовать обычную нафвигацию
- движок должен иметь возможность выдавать код только контента, чтобы не гонять хидер и футер при каждом запросе
Вроде бы логично, но не всегда эти три пункта выполняются. Так что будь осторожнее, когда столкнешься с ajax’ом.

Скрипт простого шифрования

Скрипт простого шифрования

В свое время, чистя html-файлы от вирусов, я наткнулся на забавный способ шифрования строк. Строки авторы вируса формировали с помощью чисел, причем все это выглядело примерно так: window[17795081..toString(36)](‘!’); Ну, с window все понятно, доступ к свойству объекта осуществляется с помощью квадратных скобок (в javascript так можно), а круглые скобки означают вызов метода. Но, блин, что за фигня там в квадратных скобках?!

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

Читать полностью

Окончание введения в jQuery

Окончание введения в jQuery

Перед прочтением этой статьи советую ознакомиться со статьями Введение в jQuery и Введение в jQuery (продолжение).

А я пока расскажу об объекте Event в jQuery. Вся фишка в том, что jQuery работает со своим event, аккуратно собранным из стандартных event’ов браузеров и дополненным. Короче говоря, кроссбраузерным.

Читать полностью

Введение в jQuery (продолжение)

Введение в jQuery (продолжение)Прежде чем читать эту статью, читай Введение в jQuery. Осилил? Молодец, идем дальше.

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

Читать полностью

link плагин jQuery

link плагин jQuery

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

Настройки

Вообще говоря, плагин вызывается с тремя параметрами: первый – первая кнопка, второй – вторая кнопка, а третьим параметром уже идут настройки. И вызов идет от самой библиотеки – $.link(…) .
Название Описание По умолчанию
callback1 Задает функцию при нажатии на первую кнопку. function(){}
callback2 Задает функцию при нажатии на вторую кнопку. function(){}
type Тип события (не обязательно же click ;-) ). click

Пример вызова – под катом.

Читать полностью

Введение в jQuery

Введение в jQuery

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

Читать полностью

Autojump плагин jQuery

Autojump плагин jQueryСоставил тут небольшой плагин для jQuery, который назвал autojump. Все, что он умеет делать – перескакивать с одного инпута на другой, когда введено определенное количество знаков.

Настройки:

Название Описание По умолчанию
size Максимальное количество символов, после которого перескакивать к следующему инпуту. Действует на все инпуты, где не указан атрибут maxlength. 5
cut Указывает, обрезать ли лишние символы перед перескакиванием. true
jmptab Указывает, переходить ли к следующему инпуту группы по нажатию tab. true
jmpbksp Указывает, переходить ли к предыдущему инпуту группы по нажатию backspace, если инпут пуст. false
cycle Указывает, перескакивать ли к первому инпуту из группы по заполнении последнего. false

Скачать скрипт – autojump.

Пример работы – под катом.

Читать полностью