Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JS] (Greasemonkey) edytowanie kodu Java Script
Spanish Inquisit...
post 14.01.2012, 17:55:02
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 14.01.2012

Ostrzeżenie: (0%)
-----


Wstęp którego nie musisz czytać:
Dość niedawno odkrylem addon do Firefox'a - Greasemonkey i jego niesamowite możliwości, sporo przydatnych skryptów już sobie w nim zaimplementowałem i ostatnio wpadłem na pomysł, żeby zrobić coś specjalnie dla siebie, coś co ulepszy stronę z której często korzystam. Niestety moja znajomość programowania jest niewiele ponad podstawowa (html i początki innych języków są proste, problem się robi później ;p), a Java Script wykorzystywany w addonie jest dość specyficzny, wkońcu musimy za jego pomocą edytować coś co już istnieje na różne sposoby. Szukałem już rozwiązania w internecie i próbowałem wyhaczyć rozwiązania mojego problemu w istniejących skryptach, ale niemogłem trafić na to czego szukałem.

Właściwy problem:

Na stronie w jej źródle znajduje się kod Java Script który chciałbym zedytować, mianowicie w jego konkretne miejsce (w funkcje) chciałbym dodać fragment skryptu. Pytanie czy da się tak zrobić, a jeśli tak to jak, za pomocą jakiej funkcji? Wiem jedynie jak można dodawać kod do strony używając getElementsByClassName()[], Id, Name, ale to się ogranicza do modyfikowania html i niemam pojęcia jak dodać coś do fragmentu Java Script.
Go to the top of the page
+Quote Post
wszerad
post 14.01.2012, 23:44:47
Post #2





Grupa: Zarejestrowani
Postów: 106
Pomógł: 18
Dołączył: 11.12.2008

Ostrzeżenie: (0%)
-----


Dość trudne pytanie bo takich rzeczy na ogół się nie robi.
Jeden sposób to document.getElementsByTagName('script'), i wklejasz zawartość używając innerHTML. Będziesz musiał najpierw pobrać oryginalną zawartość, podzielić ją na dwie części i w podanym miejscu wkleić swoją zmianę.
Drugi sposób to nadpisanie funkcji poprzez deklaracje tak samo się nazywającej.
Trzeci i na pewno sprawdzony to zastąpienie eventu (najprawdopodobniej kod jaki chcesz zmienić wywołuje się po jakiejś interakcji).

Na dwa pierwsze sposoby nie daje głowy, jak dla mnie nie powinny działać z prostego powodu: przeglądarka do optymalizacji JS powinna go pobierać i być nieczuła na wszelkie zmiany bo praktyka podmieniania kodu JS jest związana jedynie ze światem przestępczym i nie powinna być możliwa. Ostatnia metoda jest na pewno skuteczna

Ten post edytował wszerad 15.01.2012, 00:05:39
Go to the top of the page
+Quote Post
Spanish Inquisit...
post 15.01.2012, 01:44:32
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 14.01.2012

Ostrzeżenie: (0%)
-----


Dzięki za pomoc, poprzez nadpisanie pojedynczej funkcji moge biorąc istniejącą funkcje dodać do niej 2 linijki i włączyć ją jako nową ulepszoną, wyświetlającą szczegułową informacje którą chciałęm uzyskać ;D

Jak widać brnołem w nieco złym kierunku a rozwiązanie było tuż pod nosem haha.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 4.05.2025 - 05:51