Autor | Zpráva | ||
---|---|---|---|
lordfrikk Profil |
#1 · Zasláno: 28. 3. 2010, 16:27:02
Zdravím, potřeboval bych radu, jak odstranit SCRIPT elementy ještě před tím, než se aktivují na stránce. Jeden nejmenovaný web používá rámce a já bych v rámci tréninku rád tyto odstranil a načetl pouze hlavní obsahovou stránku, ale bohužel v ní je zahrnut skript, který ji vždy zpět načte do rámců, pokud zjistí, že je zobrazena samostatně.
Zkoušel jsem to přes XPath, ale bohužel to nejspíše na SCRIPT element nezabírá. function removeElement(ElementXpath) { var alltags = document.evaluate(ElementXpath,document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null); for (i=0; i<alltags.snapshotLength; i++) { element = alltags.snapshotItem(i); element.parentNode.removeChild(element); // Remove this element from its parent. } } removeElement('//script'); |
||
sysel Profil |
#2 · Zasláno: 29. 3. 2010, 02:28:52
Ve většině prohlížečů lze JavaScript celkově vypnout, někdy lze omezit i jen některé jeho činnosti.
|
||
lordfrikk Profil |
#3 · Zasláno: 29. 3. 2010, 13:11:19
To je k ničemu...
|
||
_es Profil |
#4 · Zasláno: 29. 3. 2010, 13:20:41 · Upravil/a: _es
lordfrikk:
Neviem, či som to správne pochopil, no ak do svojej stránky načítaš do nejakého rámu obsah z iného webu, tak prehliadač blokuje prístup k obsahu toho rámu cez JavaScript. |
||
sysel Profil |
#5 · Zasláno: 29. 3. 2010, 14:32:28
Nevím, jakým způsobem se pokoušíte vklínit svůj kód do stránky, ale pokud se před načtením stránky podaří vložit prázdnou definici téže funkce, která působí to přivolání původních rámců, tj. něco jako:
<script>function frameCheck(){};</script></html> |
||
lordfrikk Profil |
#6 · Zasláno: 31. 3. 2010, 13:25:41 · Upravil/a: lordfrikk
Pokouším se vytvořit Greasemonkey skript, který by tohle uměl. Ten se v pohodě dokáže spustit dřív než se načte stránka; problém je v tom, jak odstranit celý tag skript? Všechny ostatní tagy jsou bez problému. Zaměnit funkci za prádnou jde jednoduše, ale bohužel tento konkrétní skript není zaobalen v žádné funkci, pouze mezi tagy <script>.
Ukázka jak lze jednoduše nahradit funkci: Skript - Testovací web (stačí kliknout na jakýkoli externí odkaz) Jedná se o tento web. Stránka trpí klasickými neduhy rámů, tzn. při znovu-načtení se obnoví tam, kam ukazuje adresa samozřejmě, což ve většině případů není tam kam chceme. |
||
_es Profil |
#7 · Zasláno: 31. 3. 2010, 14:18:50
lordfrikk:
Nepoznám funkčnosť toho doplnku, preto som radil možno trochu mimo. O ktorú všetky časti skriptu sa jedná, ktoré treba znefunkčniť? Asi stačí znefunkčniť vlastnosť parent napríklad takto: var parent=0; |
||
Časová prodleva: 14 let
|
0