Рубрики
Интернет ХитроМудрости

Функциональные браузерные закладки

Многие рядовые пользователи не знают, что такое браузерные закладки. Да чего уж там, они не знают где находится адресная строка и даже зачем она нужна. Такие люди ищут сайт «Одноклассники» в «Яндексе», а «Яндекс» в «Гугле» и т.д. При этом в качестве домашней страницы у них установлен «Майл». И если что-то в браузере откроется иное, то это будет равносильно поломке компьютера в целом. Это тяжёлый случай, но со временем и желанием, можно вылечить. Так вот, эта статья не для них!

Всё началось давно, предположительно с «кнопки» в настройках WordPress’a, которая позволяла опубликовать открытый в данный момент сайт как новый пост. Эту кнопку нужно было добавить себе в закладки с помощью перетаскивания. Тогда это казалось интересным, но не нужным. Параллельно с этим; В процессе разработки сайтов иногда приходилось проверять JavaScript’ы на странице, но каждый раз редактировать и перезагружать страницу было очень неудобно и я случайно выяснил, что скрипт можно выполнять в адресной строке. И вот однажды, когда что-то нужно прямо здесь и сейчас, мне понадобилось узнать пароль скрытый за «звёздочками» в поле веб-формы, а под руками ничего не было, и я начал искать что ни-будь эдакое в поисковике. А спустя немного времени мне удалось найти JavaScript сниппет, который вскрывал все поля для ввода пароля, который потом и был помещён в закладки, по типу той самой кнопки. С тех пор и пошла разработка функциональных закладок с JS сниппетами. Здесь я хочу поделиться некоторыми из них.

Вскрыть все поля с паролями

Изменяет тип полей «input» с «password» на «text», тем самым убирая скрывающие «звёздочки»/точки и показывая пароль. Может пригодится, когда браузер помнит набранный ранее пароль и может автоматически ввести пароль, а вы уже не помните.

javascript:(function(){Array.prototype.slice.call(document.querySelectorAll("input[type='password']")).map(function(el){el.setAttribute("type","text")})})();
Показать всё что скрыто

Убирает скрывающие/выключающие атрибуты со всех тегов, например такие как «disabled», «display», «visibility». Поможет если нужно активировать форму или посмотреть, то что должно появиться после заполнения формы и т.д. Вариантов применения очень много.

javascript:(function(){Array.prototype.slice.call(document.querySelectorAll("*")).map(function(el){if(el.disabled==true)el.disabled=false;if(el.style.display=="none")el.style.display="";if(el.style.visibility=="hidden")el.style.visibility=""})})();
Ссылки с иконками

Наверно не очень практичный скрипт, но он добавит ко всем ссылкам на странице иконки сайтов.

javascript:jQuery('a[href^="http"]').each(function(){jQuery(this).css({'padding-left':'15px','background':'url(https://favicon.yandex.net/favicon/'+this.hostname+') left center no-repeat','background-size':'13px'});});
Быстро блокнот

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

data:text/html,<!doctype html><html contenteditable></html>
Шифрование текста алгоритмом AES

Сниппет позволит зашифровать и расшифровать выделенный текст на веб странице с заменой. Этой штуке я посветил отдельный сайт — AES fas!

javascript:(function(){if(typeof window.AESf==="undefined"){var aJS=document.createElement("script");aJS.type="text/javascript";aJS.src="https://goo.gl/JuQ6cj";document.getElementsByTagName("head")[0].appendChild(aJS)}else AESf()})();
Разрешить выделение

Маленькая хитрость с использованием стилей, которая блокировала возможность выделения текста, теперь не помешает скопировать текст.

javascript:Array.prototype.forEach.call(document.querySelectorAll("*"),function(e){"none"==window.getComputedStyle(e).getPropertyValue("user-select")&&(e.style.userSelect="auto")});
Удалить слушателей событий

Отключает привязку функций к событиям.

javascript:(function(){for(var eventType in getEventListeners(document))getEventListeners(document)[eventType].forEach(function(e){document.removeEventListener(eventType,e.listener)})})();
Клонирование

Просто клонирует страницу, при этом все функции прикрепленные к событиям перестают работать.

javascript:(function(){document.body=document.body.cloneNode(true)})();

Автор: Илья Балдуев

Специалист ИТ, веб программист, фотограф, блоггер. Добрый, но злопамятный. Верный, но не Хатико. Честный, не всегда. Упрямый, но ленивый.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *