Czy da się zmienić kod JavaScript "w locie"?

0

Założenia:
Jest sobie działająca strona na serwerze do którego nie mam dostępu.
Strona ma zaimplementowane kilka skryptów, które wykonują się podczas jej ładowania.

Potrzeby:
Interesuje mnie zmiana kodu w jednej z funkcji JavaScript lub jej całkowite wyłączenie.
Oczywiście wszystko działające tylko po mojej stronie.

W inspektorze załączonym w Firefox jest możliwość zmiany ccs w locie. Interesuje mnie coś takiego tylko zmiana ma następować w kodzie skryptu. Niestety jeżeli chodzi o JavaScript jest możliwość debugowania ale edycja jest zablokowana (to samo w Firebug).
Może po zmianie nastąpić przeładowanie strony na już zmodyfikowaną wersję.
Wydaj mi się, że jest to osiągalne ale nie mogę znaleźć żadnych informacji na ten temat.

Jak ktoś wie jak to można wykonać proszę dać namiary na program, bądź wtyczkę która potrafi to wykonać.

0

Zainteresuj się dodatkami do przeglądarek takimi jak Greasemonkey lub Tampermonkey które pozwalają wskrzyknać własny kod javascriptowy

0

Ale po co ci to jak i tak nic nie zmienisz po stronie serwera?

0
dervill napisał(a):

Zainteresuj się dodatkami do przeglądarek takimi jak Greasemonkey lub Tampermonkey które pozwalają wskrzyknać własny kod javascriptowy

Nie chodzi mi o wstrzykiwanie javascriptu tylko edycja już istniejącej funkcji.

Piękny Mleczarz napisał(a):

Ale po co ci to jak i tak nic nie zmienisz po stronie serwera?

Potrzebuję wprowadzić zmiany tylko u klienta na którym pracuję.
Zmian po stronie serwera nie muszę, a tak naprawdę nie chcę wykonywać.

prosty przykład:

 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.js"></script>
<script type="text/javascript">

(function(){

    window.setInterval(function(){ alert("Hello"); }, 10000);



})();

</script>

Efekt: Co 10 sek. wyświetli się komunikat Hello.

Interesuje mnie zmiana kodu funkcji tak aby wyświetlał się komunikat zamiast "Hello" np. "Ok"

0

Jeżeli potrzebujesz tego tylko na próbę i korzystasz z chrome, najlepszym rozwiązaniem będzie ustawienie debuggera. Daj breakpoint na początku funkcji, odśwież stronę. Gdy się załaduje, wykonywanie skryptu się zatrzyma. Wtedy zmień żądaną wartość, zapisz. Chrome automatycznie "zbuduje" kod(upewnij się że w console pojawił się odpowiedni komunikat), po naciśnięciu kontynuuj w polu debuggera kod wróci do pracy z zmienionym kodem. Niestety, musisz to robić za każdym razem jak odświeżysz stronę.
Nie jestem pewien, ale w firefox może być podobnie.

0

Jeżeli chodzi o brakepoint to oczywiście jest wszystko ok i zatrzymuje się we właściwym momencie ale nie daje mi możliwości edytowania.
Jeżeli chodzi o greasemonkey czytam, czytam i rozwiązania nie widzę (szczególnie że funkcja nie ma nazwy)

0

Funkcja nie jest w .js tylko faktycznie w htmlu między znacznikami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1