Комментарии: (5)

Злой плагин для jQuery

Рубрика : Инструментарий

SUMMARY

A jQuery plugin for crashing IE6. That'll teach those motherf!%@*#s to upgrade their s#*t.

http://plugins.jquery.com/project/crash

О плагине я узнал сегодня на хабре. В документации подробно описывается, как им пользоваться.

USAGE

To crash IE6 call

$.crash();

В jQuery добавляется метод crash(), вызов которого валит IE6 вот так:

iecrash

Что же именно приводит IE6 к такому конфузу? Я скачал плагин и стал изучать его исходный код...

/**
 * jQuery Crash (http://mktgdept.com/jquery-crash)
 * A jQuery plugin to crash IE6.
 *
 * v0.0.2 - 5 March 2010
 *
 * Copyright (c) 2009 Chad Smith (http://twitter.com/chadsmith)
 * Dual licensed under the MIT and GPL licenses.
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.opensource.org/licenses/gpl-license.php
 *
 * Use $.crash();
 *
 **/
;jQuery.crash=function(x){for(x in document.open);};

То есть вот этот код IE6 выполнить не может:

for(x in document.open);

Для тех кто не очень хорошо знаком с JavaScript, цикл for-in - это обход всех свойств объекта. Вообще document.open - это функция, которая открывает новое окно по указанному URL (MSDN). Но JavaScript позволяет использовать функции и как объекты в том числе. То есть на функции можно вешать разные свойства и это будет корректно с точки зрения языка.

Например, такой код покажет окошко с текстом "document.open.kuku = Ku-ku!" в Гугл Хроме. IE6 тоже покажет окошко, но другое (то, что в начале статьи).

document.open.kuku = "Ku-ku!";
 
for(x in document.open)
{
	alert('document.open.' + x + ' = ' + document.open[x]);
}

(*) вызов document.open.kuku эквивалентен вызову document.open['kuku'] в JavaScript

chrome_not_crash

У меня нет IE6, так что не могу проверить, распространяется ли эта особенность на такие функции, как document.getElementById() и вообще любые функции. Если у кого-то есть старый добрый злой ослик, проверьте и напишите. Мне весьма любопытно)

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

Комментарии (5)

люди пользуются IE6 от незнания. Не плохо было бы перед вызовом такой функции выдать предложение на скачивание чего-то другого (IE7 хотя бы).

Или как более извращенный вариант – при просмотре сайта обрушивать его раз в 3 минуты, каждый раз сохраняя счетчик падений в куках. Как только при следующем открытии счетчик достигнет какого-то значения (скажем, 5ти), выдать пользователю рекламу «Стал ломаться IE6? Тогда качайте IE7″ :) Наглядно и поучительно)

Лично я считаю, что это очень наглядный пример высокомерного поведения айтишников (веб-разработчиков в данном случае) по отношению к другим, менее «компьютерно грамотным» людям. Проблема IE6 — проблема исключительно веб-разработчиков, и даже просто давать о ней знать пользователям, мне кажется, не стоит. И уж тем более, обрушивать браузер пользователя — это просто пиздец на мой взгляд, по другому не скажу. Вы знаете, какая реакция за этим последует? Пользователь побежит скачивать новый браузер? Хуй. Он просто раз и навсегда перестанет ходить на ваш сайт. Плюс, настроение вы ему точно испортите (особенно, если он в соседнем окне заполнял какую-то длинную форму и не успел её засабмиттить) — минус в карму. Никого из пользователей не волнуют какие-то тончайшие материи валидного XHTML или чего-то подобного, или что IE6 чего-то там не поддерживает. Короче, на мой взгляд, этот плагин — апогей IT-кретинизма.

Гош, у тебя есть примеры людей, которые пользуются IE6 от незнания? У меня – нет. Вернее так: те, кого интересует мир IT, не пользуются IE6 и без пинков, хотя бы потому, что он некрасивый, медленный и вкладок в нем нет.

А пользуются им те люди, которым вообще пофигу, чем пользоваться. Им нужно отправить письмо или найти, где «купить кресло-качалку недорого». Для них переустановить браузер может быть так же сложно, как тебе самому поменять ремень генератора (хотя ведь ничего сложного, но мы-то с тобой это не умеем).

А если внук 5 лет назад подарил своей бабушке компьютер и научил ее пользоваться поисковиком? И вот, прикинь, прогрессивный верстальщик сайта аптеки 36.6 захерачит туда такую шутку-нанайку.

Эх, что-то я сгустил краски)

В общем, я полностью согласен с мнением Андрея.

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

а это идея. )

да я разве что? я сам против такой крайней меры. пошутить уж нельзя… ))

Комментировать