Lxf118 greasemonkey

Greasemonkey. Hálózati szabályok

Internet - egy csodálatos dolog, de úgy néz ki, nem mindig megfelelő. Dzhuletta Kemp és Greasemonkey hozott kijavítani.

Az ötlet alapjául szolgáló Greasemonkey. nagyon egyszerű. Ez a kiterjesztés a Firefox. és ez meg ugyanúgy, mint mindenki más (találják az Eszközök> Kiegészítések menü [Eszközök> Kiegészítések], és kattintson az Install [Telepítés]). Azonban önmagában ez nem csinál semmit, csak lehetővé teszi, hogy a parancsfájlok (saját vagy más felhasználók által írt), hogy módosítsa a megjelenését és viselkedését web-oldalakat.

1. rész Az első Greasemonkey szkript

Lxf118 greasemonkey
Dialog hogy hozzon létre egy új szkriptet, annak minden dicsőségét. Ismertesse a forgatókönyv részletesen: egyszerűsíti az életét a jövőben

Ahhoz, hogy egyszerűsítse a script írás, Greasemonkey egy hasznos párbeszédet. Telepítése után azonnal Greasemonkey a jobb alsó sarokban a Firefox ablak eszköztár jelenik majom pofáját. Kattintson az egér jobb gombjával, és egy menü nyílik meg, ami pont az Új Script [New User Script]. Jelölje ki, majd a párbeszédablak jelenik meg, hasonlóan az egyik a jobb oldalon.

„Leírás” mező leírását action script. Mindig töltse ki, még a saját szkriptek - tudnak felhalmozni sokat, és ha elhagyja az információt arról, hogy mi teszi az egyes forgatókönyv, akkor könnyebb lesz kezelni.

A szabályok a befogadás lehet használni a Magic TLD.tld szintaxis. amely illik egyik felső szintű domain (köztük a második szintű tartományokat .co.uk típusú, stb). Például, example.tld felel example.com, example.co.uk, example.org és az egész készlet más domének. Azonban biztonsági okokból, ez szintaxis nem használható, ha a script működik személyes adatokat.

Lxf118 greasemonkey
HTML dokumentum - a DOM fa tárgyak: minden gyermek csomópont ágakat a szülő.

A fájl így néz ki:

Itt az ideje, hogy írjon a forgatókönyvet is. Csak megváltoztatja a háttér színe az összes oldalt a domain tartalmazza fehér. (Előfordul, hogy a háttér színét, és nem igazán néz.) A lapok keretek nélkül, vagy más szövődmények történik egy sort:

dokumentum - a beépített módon összekapcsolni az aktuális oldalon. Ez a DOM objektumot (Document Object Model - Document Object Model), amely a teljes HTML-dokumentum. Gondold azt, hogy egy fa HTML-elemek (objektumok). Minden új elem a „gyermek” képest az előző (nézd meg a rajz, amely egy lehetséges szerkezet a test HTML-dokumentum).

Ebben a modellben, hogy lásd az objektum jelölés használható fő obekt.potomok.potomkpotomka. Így először van egy test tagja. akkor a stílus a body elem, és végül, a stílus attribútum a háttérben a body elem. Ez az attribútum fehérre van állítva (#ffffff - fehér jelképe hexadecimális jelölés, ez az egyik HTML szabványokat lehetne használni egyszerűen és fehér.)

Lxf118 greasemonkey
Oldal szörnyű háttere és nyugodt fehér háttér előtt.

Greasemonkey van kapcsolva, és ki az egér bal gombjával a ikonra. Akkor kapcsolja ki, hogy az oldal megjelenésében, majd kapcsolja be újra az oldalt, és mi a szkript.

2. rész Mi határozza meg a CSS stílusokat

Amint a rendszer DOM „testvér” elem HTML-elem az, amelyik tartalmaz. Képzeljünk el egy olyan dokumentum formájában egy nagy fa, amely minden nyitó címke (pl

) Kezdődik egy új ága, és az egyes záró (például,

) Befejezi azt. Self-záró tag (például,
) Egy ágát képezi, amelyet nem lehet kapcsolt. Így a keresést korlátozni lehet egy előre meghatározott bekezdés vagy blokk div.

Az első funkció (addCss) meghatároz egy módszert hozzáadásának a globális CSS stíluslapot. dokumentum ismételten hivatkozik az aktuális oldal, de ebben a példában a getElementsByTagName funkció ( „hogy a terméket a tag neve” - ez az, amit csinál) válassza ki az első elemet a fejét. Azok számára, akik nem ismerik a CSS: a stílusok beállítása [köztük] szekcióban fej HTML-fájlt, és meg kell, hogy ez az elem lesz a szülő az új CSS elemet. Van egy sor, hogy a fogások hiba állapot, amikor a fejrész nem (visszatér a funkció beavatkozás nélkül), akkor a szkript létrehoz egy eleme a stílus, és meghatározza annak típusát attribútumot text / css. on line

függvény feltételezi, hogy azt át, és beilleszti azt a style elemet. Ezután teljesen létrehozott stílus elemet adunk a head elem - ennyi az egész.

Az utolsó sor a függvényhívás egy érv, amely meghatározza a háttérszín - ahol a vonal cssString. Figyeljük meg, hogy használja a zárójelben (). mert a hívás funkció, nem határozza meg. Flag! Fontos garantálja, hogy a CSS-stílusok felülírják az adott oldalt.

Tény, hogy ezt a kódot hozzáadja a következő sorokat a HTML-oldal főcím:

Hasonlóképpen, akkor meg a saját CSS stílusokat bármely elem az oldalon - csak állítsa be a megfelelő CSS-húr, ami átkerül addCss funkciót. Például, a hívás

Állítsa be a háttérszínt fehérre, a szöveg fog fekete és igazítsa a szélessége.

3. rész: Változás a megadott elemekkel

Így megtanultuk, hogyan kell változtatni a stílusát egy elem remake DOM objektumot, vagy a különböző stílusok, kiegészítve a saját CSS-rekord, és alkalmazni tudja a megadott helyszínen a szabályok lehetővé teszik / Greasemonkey kivételek. És ha meg kell találnunk a megfelelő terméket egy bizonyos típusú előforduló az oldalon egy párszor, és megváltoztatni őket?

A negyedik paraméter megadja az utat vissza eredményt. Opció itt megadott felel meg egy tetszőleges sorrendben leggyakrabban szükség van. Ha azt szeretnénk, hogy visszatérjen eredmények a sorrendben jelennek meg az oldalon, használja helyette XPathResult.ORDERED_NODE_SNAPSHOT_TYPE. Az utolsó opció lehetővé teszi, hogy összekapcsolják a lekérdezés eredményét -, hogy adja át az eredmény az előző hívás document.evaluate. és kérni őket újra együtt. Kísérletezni vele!

Kérdés XPath (első lehetőség) - „motor” a funkciót. Az XPath - egy erőteljes lekérdező nyelv az XML dokumentumok, beépített Firefox [és nem csak - kb. Ed. ] És ez lehet használni a Greasemonkey. Ha keres egy adott elem készlettel, akkor csak sétálni a DOM fa kivonat készlet csomópontok és megtalálni azokat a címet. De ez elég lassú és nem túl szépen szempontjából kódot. XPath lehetővé teszi, hogy megtalálja az oldalon, csak annyit kell, hogy sokkal gyorsabb és elegáns. Fogom használni őket több scriptek, és remélhetőleg ez segít megérteni, hogyan működik - ha azt szeretnénk többet megtudni, keresse meg a leírás vagy online oktatóanyagok az interneten. Nyelv tényleg nagyon rugalmas: ha határozhatnak meg az eredményeket, hogy szeretne kijutni a HTML-dokumentum, akkor képes lesz arra, hogy írjon az XPath és -query, amely lehetővé teszi számukra, hogy kap.

Térjünk vissza a script: képek készítettünk, és azt szeretnénk, hogy tegyen valamit. Itt a következő kódot: hozzáfűzni után azonnal a fenti:

snapshotLength és snapshotItem - módszerek, amelyek működnek az eredménye a hívó és a visszatérő illetve document.evaluate találatok számát, és a kívánt eredményt a száma. Csúsztassa mind a hurok. mint a példában, és kezeli az egyes elemek (itt - minden kép az oldalról) XPath lekérdezés eredménye.

Kezdetben Greasemonkey volt több súlyos biztonsági réseket okozott végrehajtásán egyéni szkriptek közvetlenül a web-oldal, így a scriptek bocsátani oldalaihoz betolakodóktól. Most Greasemonkey másképpen működik, tényleg végre egy script a „sandbox”, és a burkolat eléréséhez tárgyakat egy távoli web-oldalt meg akarja változtatni a szkripteket.

Sajátosságai miatt a végrehajtás a biztonság Greasemonkey szkript ez a módszer nem fog működni. Meg kell utazni egy kanyargós úton.

thisImg.src ad nekünk az értéke a src attribútum a kép. Tehát, a tag

, thisImg.src visszaút foo.jpg. (Hasonlóképpen, akkor kap értéket a szélesség vagy magasság attribútumokat vagy bármely más img tag attribútumokat. A teljes lista a termékek és DOM objektum attribútumok megtalálhatók az interneten.)

4. rész cseréje szöveg

Most majd próbálja helyettesíteni a szöveg, amely egy oldalon néhány helyen. Tegyük fel, hogy beteg a szó „outsourcing» [outsourcing], itt-ott, fenyegető a honlapon a cég, amit sajnos meg kell menni rendszeresen. Cserélje ki „Levak» [otherguy] (vagy bármely más, hogy megtalálja yumornym helyett unalmas).

Az első darab kód már láttuk az előző forgatókönyvet. Úgy néz ki, a dokumentum minden szöveges csomópontok. Ezután állítsa be a reguláris kifejezést. Constructor új RegExp () két argumentuma. Az első - a keresett kifejezést, a második - módosítók. g jelentése globális megfelelést: helyettesít minden előfordulását, nem csak az első. (Valószínűleg szükség lesz rá.) Én érzéketlen összehasonlítást.

Vannak m módosítót egy multi-mode, ahol a horgonyok ^ és a $ (ami az elején és a végén a sor, sorrendben) egybeesnek az álláspontok előtt és után transzfer vonalon, nem csak az elején és a végén a szöveget.

Végül egy másik hurok kiterjed XPath lekérdezés eredménye. Megtalálni a vonalat, és helyette egy másik. Egyszerű!

Greasemonkey sokkal többet tehet - csak kísérlet, és meglátjuk, mi történik. Állítsa az internet maguknak! LXF

öröm hibakeresés

Egy tökéletes világban mindenki, nem számít, hogy mit írsz, csak elkezd működik-e. Sok szerencsét!

Aki egyszer nem működött, egy kis segítség a hibakeresés: