Я ленивый программист. И считаю это достоинством. Лень помогает мне не писать лишнего кода, оптимизировать его, делать переносимым, использовать чужие наработки. А еще лень помогает учиться.
Вот сейчас мне стало лень и я освоил написание пользовательских скриптов для Greasemonkey.
О такой возможности я знал давно. Вообще я считаю что в программировании нельзя быть дока. Потому что слишком много подобластей и нюансов. Нужно просто представлять что возможно, какие технологии есть и где про них прочитать если потребуется. Все остальное — дело техники.
Я когда-то давно узнал что можно встраивать некий JavaScript прямо в браузер. Можно говорить ему: друг мой, выполни пожалуйста вот этот нехитрый скрипт когда я захожу на этот сайт и он будет это делать. Пользовательским этот скрипт называется потому что хранится он не на сервере, а прямо у клиента на компьютере. То есть, это ваш собственный скрипт, который доступен только вам.
Пользовательские скрипты реализуются некоторыми браузерами на нативном уровне, кажется. Вроде Опера это умеет, например. Но народную любовь снискал Greasemonkey — плагин для браузеров, который как раз позволяет выполнять пользовательские скрипты.
Мне это все было как-то без надобности. Ну что можно сделать жабаскриптом? Обычно это все касается изменения внешнего вида страницы. Убрать колонку, изменить размер чего-нибудь, показать что скрыто или наоборот. Так вот, мне это все было не нужно. А теперь у меня есть блог о футболках, куда я часто постю картинки с сервиса printdirect.
Процесс постинга картинки выглядит так:
Вот столько всяких действий чтобы вставить ОДНУ картинку с ссылкой. Это очень, очень утомительно.
Поэтому я решил автоматизировать этот процесс. Потому что я ленивый программист.
Я взялся за изучение Greasemonkey. Оказалось, что там все не просто, а очень просто. По сути, это просто JS код, который снабжен парой служебных директив.
Вдохновившись, я сразу захотел использовать jQuery. Лень мне писать на чистом JavaScript, видите ли. Хотя задача простая, если честно. Короче, я нашел как подключать jQuery к Greasemonkey и заюзал этот код. Он загружает jQuery с хостинга гугла. Обычно я загружаю с хостинга Яндекса, но какая разница?
Теперь надо было только написать сам скрипт. Все оказалось просто.
// Весь Greasemonkey код ниже
function letsJQuery() {
var full = $('#full_img_front').attr('src'); //хватаем адрес большой картинки
if(full) { //если он есть — мы на нужной странице
var url = location.href; //берем адрес страницы
url = url.replace('http://', '/go/'); //изменяем его
var text = $('h1.main').html(); //берем имя товара
//формируем код для отображения
var code = '<br style="clear:both;"><textarea style="clear:both;height:200px;width:300px;">';
code+='<a href="'+url+'"><img src="'+full+'" alt="'+text+'" title="'+text+'"/></a></textarea>';
$('div.images').append(code); //показываем его
}
}
Теперь страница товара у меня выглядит так:
Мне остается только скопировать этот код и вставить его в пост. Очень упрощает работу, скажу я вам. Удачной автоматизации!