Рубрика «chrome extensions» - 2

В своей прошлой статье, я упомянул о выпуске браузерного расширения для Google Chrome, который способен повысить эффективность поиска, за счет предоставления релевантной информации из статей понравившихся вам в социальных сетях.

На сегодня мы поддерживаем 3 главных браузера Chrome, Firefox и Safari, причем, не смотря на разницу платформ, все собираются из одной кодовой базы. Я расскажу, как это было сделано и как упростить себе жизнь разрабатывая браузерные расширения.
Читать полностью »

В последнее время привычный формат прослушивания музыки на десктопе для меня трансформировался. Теперь я всё реже слушаю MP3 из foobar2000, и всё чаще ленту SoundCloud'а. При этом, столь давно любимые персональные чарты и рекомендации от Last.fm в связи с этим становились всё менее и менее актуальными. Так, мне пришла идея сделать скробблер SoundCloud'а для Google Chrome…

Аудио ботанам: Скробблинг (Last.fm) проигрываемой в SoundCloud музыки из расширения Google ChromeЧитать полностью »

Данная статья может быть интересной для начинающих web-разработчиков, или же обычных программистов, которые вёрстку учили только на первом курсе, и сейчас не до конца понимают как с html вообще можно играть.

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

Как запускать расширения Хрома не из магазина WebStoreДевять довольно честных способов отъёма функции цензора у продукта большой компании.

Начиная с версии 35 (35.0.1916.114 m), как известно (англ.), браузер Chrome для ОС Windows перестал поддерживать установку новых и работу прежде установленных расширений, размещённых не в магазине Chrome WebStore. Это же касается и всех юзерскриптов, не размещённых в этом магазине. Группа Windows-пользователей — обширна, поэтому требуются новые инструкции о том, как с этим бороться. Линуксоидам и маководам этого, к счастью, пока не грозит.
Читать полностью »

Google Chrome отказывает пользователям Windows в возможности установки расширений не из Chrome Web Store

Некоторое время назад Google заявил, что планирует отменить возможность устанавливать расширения для Chrome, которые не находятся в Web Store.Читать полностью »

Octotree: отображение кода на Github в виде дерева

Github является незаменимым сайтом, на котором разработчики проводят многие часы. Некоторым хочется добавить удобства в повседневную работу. Расширение Octotree для Firefox/Chrome/Safari делает именно то, чего так не хватало на Github, а именно, отображает исходный код в виде дерева.
Читать полностью »

Всем привет!

Как известно, основная функция Nimbus Note — это хранение и редактирование различной информации, которую можно отправлять в сервис самыми разными способами: через мобильные приложения, десктопные программы и т.д. И чем больше способов для отправки и редактирования информации, тем лучше. Сегодня я расскажу вам о двух наших приложениях для Google Chrome, одно из которых позволит управлять своими заметками, а другое пополнять свои «закрома» новыми файлами, а также делиться ими.

Nimbus Note — chrome.google.com/webstore/detail/nimbus-notes-clip-and-not/haafigbapbpbpnmgcknnmilaaaimggpk

Nimbus Folder — chrome.google.com/webstore/detail/nimbus-drop-box/cjhnbfcbklgedkkjnelibndkekcjelkd?hl=en-US

image

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

Странно, что на Хабре до сих пор не было ни одного упоминания об этом расширении. Спешу исправить ситуацию.

HTTP Switchboard — расширение для Google Chrome, которое позволяет пользователю блокировать ресурсы сайта посредством динамических черных и белых списков. Проще говоря, с помощью HTTP Switchboard можно выборочно разрешать или запрещать загрузку печенек, css, картинок, плагинов, скриптов, XHR, фреймов и прочих элементов для любого сайта. Так же недавно появилась частичная поддержка фильтров AdBlock+ и возможность блокировки фоновых запросов браузера (behind-the-scene HTTP requests).

HTTP Switchboard — NoScript на стероидах

Это расширение нельзя назвать интуитивно понятным, поэтому вкратце опишу элементы интерфейса и основные принципы работы.
Читать полностью »

Новый хаб «Chrome Extensions»В классификаторе расширений браузеров произошло изменение. Все многочисленные статьи про расширения Хрома теперь можно пометить этим хабом, что призываю сделать авторов ранее написанных статей. Кроме этого, по случаю праздника, хотел бы написать обзор о расширениях и юзерскриптах Хрома, о том, как они сформировались и к какому виду пришли.

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

Добрый день, уважаемые читатели. Сегодня хочу поделиться с Вами кодами на Javascript для возможности перекачивания музыки и видео с ВК своими ручками на свой персональный компьютер. Ведь нетрудно себе представить, как записал клевый клип и музыку, потом закачал их туда, но на твоем компьютере все это добро куда то пропало… Что ж, не беда! Мы выкачаем то, что мы закачали туда обратно. Главное, что нам это наш браузер, да сайт позволяют, осталось пораскинуть мозгами.

Для начала нам надо распарсить аудиофайлы… Итак, возьмемся за класс «area clear_fix» и будем пихать в массив то, что принадлежит к классу «play_new». Сначала присвоим в массиве стили, чтобы отловить положение элементов на странице (в последующем для отображения кнопочек рядышком). Потом получим ссылки из input и имя будущего файла из тега b. Потом нужно будет присваивать новым ссылочкам, которые мы будем создавать атрибут download.

function audio(){
var main_div=document.getElementsByClassName("area clear_fix");
for(var i=0;i<main_div.length;i++){
if(main_div[i].parentNode.firstChild.href){
main_div[i].parentNode.firstChild.style.top=main_div[i].getElementsByClassName('play_new')[0].offsetTop+"px";
continue;
}
var _mp3_=main_div[i].getElementsByTagName("input")[0].value.split(",")[0];
var _b_=main_div[i].getElementsByTagName("b")[0];
var _top_=document.getElementById(main_div[0].parentNode.id.replace('audio','play')).offsetTop+"px";
var _t_=main_div[i].getElementsByClassName('play_new')[0].offsetTop+"px";
 var span=main_div[i].getElementsByTagName('span')[0];
 var ispan=span.innerHTML;
  if(span.children[0]){
   var ispan=span.children[0].innerHTML;
  }
var _a_=document.createElement("a");
//_a_.href=""+_mp3_+"&name="+_b_.children[0].innerHTML+"-"+ispan;
_a_.href = _mp3_.substring(0, _mp3_.indexOf('.mp3') + 4);
_a_.download=trim(_b_.children[0].innerHTML+"-"+ispan)+".mp3";
_a_.title='Скачать '+_b_.children[0].innerHTML+"-"+ispan;
_a_.draggable="true";
_a_.innerHTML='<span style="cursor:copy;padding:6px;width:16px;height:16px;background-color:#5F7D9D;color:#fff;border-radius:2px;"><img src="http://st0.vk.me/images/icons/darr.gif" /></span>';
_a_.style.zIndex="10";
_a_.style.left="30px";
_a_.style.top=_t_;
_a_.style.position="absolute";
main_div[i].parentNode.insertBefore(_a_,main_div[i].parentNode.firstChild);
_b_.style.paddingLeft="27px";
}
}

Тут как бы понятно должно быть, все… ну а чтобы отрезать всякий мусор после расширения файла мы применили:
_a_.href = _mp3_.substring(0, _mp3_.indexOf('.mp3') + 4);

В общем уже можно это запустить таким образом через интервал, конечно же если мы находимся на том самом сайте:

setInterval(function(){
  if(window.location.href.indexOf('vk.com')>1) {
 if(document.getElementsByClassName("area clear_fix").length!=0){
  audio();
  }   }  },1000);

Хорошо. Одна функция готова. Пора поведать и о том как скачать видеофайлы…

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js