Greasemonkey aneb jak si upravit cizí web podle sebe
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Greasemonkey aneb jak si upravit cizí web podle sebeGreasemonkey aneb jak si upravit cizí web podle sebe

 

Greasemonkey aneb jak si upravit cizí web podle sebe

Google       Google       25. 6. 2008       28 325×

V tomto článku bych vás chtěl seznámit s užitečným rozšířením pro prohlížeč Mozilla Firefox, se kterým můžete modifikovat vzhled nebo přidávat funkce jakémukoliv webu.

Reklama
Reklama

Greasemonkey je nadmíru povedený plugin, který využijí hlavně uživatelé/kodéři, kteří nejsou spokojeni s nějakou webovou službou. Ať už proto, že nabízí málo funkcí, nebo se nepovedla vzhledem. Jako příklad může sloužit například GMail, který lze pomocí Greasemonkey a volně stažitelných skriptů doladit a přidat mu funkce.

Vše pracuje na jednoduchém principu. Rozšíření má k dispozici sadu uživatelských skriptů (psaných v JavaScriptu) a ke každému má nastavenu masku webové adresy, pro kterou se má daný skript použít. Po načtení stránky je tento skript podstrčen prohlížeči a ten jej provede.

Jako menší příklad si ukážeme, jak se jednoduše zbavit reklamy v novém webmailu Centrum.cz a jak upravit celé rozhraní tak, aby vypadalo, že nikdy reklamu neobsahovalo.

Instalace Greasemonkey

Instalace Greasemonkey se nijak neliší od instalace jiných doplňků. Na stránce pluginu klikněte na Přidat do aplikace Firefox. Potvrďte instalaci a restartujte prohlížeč. Pokud jste byli úspěšní, v pravém dolním rohu prohlížeče se objevila malá opičí hlava.

Tvorba skriptu

Pokud máte nainstalováno, můžeme přistoupit k úpravě rozhraní webmailu. Před naší úpravou vypadá takto:

My se pokusíme odstranit malý banner vlevo pod seznamem složek s poštou a celý pravý panel s reklamou.

Klepněte pravým tlačítkem na ikonu opičáka a v kontextovém menu vyberte Nový uživatelský skript. Objeví se okno.

Do kolonky Name napište jméno skriptu – třeba AdRemover. Do Namespace napište např. none – my sice žádný namespace využívat nebudeme, ale to Greasemonkey slyšet nechce. Description nechte prázdné a do políčka Includes zadejte masky adres stránek, na které se bude náš skript vztahovat – v našem případě to bude

http://mail*.centrum.cz/*

Jak možná tušíte, adresa se bude při práci se schránkou dost měnit, a proto jsem do ní přidal zástupné znaky (*), které umožní tolerovat případné drobné rozdíly.

Poslední políčko Excludes znamená přesný opak předchozího – sem se píší stránky, na které se skript vztahovat nesmí. My ho necháme prázdné.

Po potvrzení se vás plugin zeptá na textový editor, který bude použit k editaci skriptu. Samozřejmě stačí obyčejný poznámkový blok, ale zvýrazněná JS syntaxe je výhoda, takže lepší volba bude například PSPad.

Ve vybraném editoru se vám otevře téměř prázdný javascriptový soubor obsahující pouze cosi jako hlavičku. V našem případě vypadá takto:

// ==UserScript==
// @name           AdRemove
// @namespace      none
// @include        http://mail*.centrum.cz/*

Nyní vložíme kód upravující rozhraní webmailu. První část bude skrývat reklamu a také mírně upraví písmo a margin textu v patičce. Druhá část upraví velikost rozhraní tak, aby po odebrané reklamě nezbylo prázdné místo.

V následujícím kódu projíždíme jednotlivé elementy stránky a v případě, že narazíme na reklamy nebo patičku, provedeme skrytí nebo úpravu velikosti:

if (e = document.getElementsByTagName("div"))
{
  c = e.length;
  for(i = 0; i < c; i++)
  {
    if (e[i].hasAttribute("class"))
    {
      // skrytí reklam
      if ((e[i].getAttribute("class") == "right-ad-col") || (e[i].getAttribute("class") == "leftbanner"))
      {
        e[i].style.display = "none";
      }
      // zmenšení patičky
      if ((e[i].getAttribute("class") == "footer"))
      {
        e[i].style.margin = "5px";
        e[i].style.fontSize = "11px";
      }
    }
  }
}

Teď již jen odstraníme ono prázdné místo:

if (p = document.getElementById("page"))
{
  p.style.width = "100%";
  p.style.paddingRight = "0px";
}

A je hotovo. Výsledek našeho snažení by měl vypadat zhruba takto:

Odkazy

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor programuje v Delphi a PHP, pokouší C++ a zajímá se o online hry
Web    

Nové články

Reklama
Reklama
Obrázek ke článku Facebook spouští službu Marketplace V ČR

Facebook spouští službu Marketplace V ČR

Společná platforma Marketplace usnadní lidem na Facebooku vyhledávání, nákup a prodej použitého zboží na lokální úrovni. Bude tak přímou konkurencí pro weby a aplikace se stejným zaměřením jako je například Letgo, Bazoš, Aukro, Sbazar a další.

Obrázek ke článku DistrCut – optimalizace pomocí distribuované inteligence

DistrCut – optimalizace pomocí distribuované inteligence

Optimalizační systémy, které jsem dosud popisoval, se týkaly vždy optimalizace na jednom zařízení. Optimalizovalo se dělení tyčového materiálu na jedné pile, vypalování plošného materiálu na jednom plazmovém stroji, řídilo se tavení na jedné elektrické obloukové peci.

Ve výrobním procesu je však často nutné optimalizovat činnost celého výrobního úseku, kde je více různých objektů odlišného typu a koordinovat činnost těchto objektů k dosažení společného cíle, zpravidla kvality finálního výrobku. Řešení tohoto problému umožňuje distribuovaná inteligence.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý