Czy można wywołać funkcję javascript z adresu URL? Zasadniczo próbuję wykorzystać metody JS na stronie, na której nie mam dostępu do źródła.
Coś jak: http://www.example.com/mypage.aspx?javascript:printHelloWorld()
Wiem, że jeśli umieścisz javascript:alert("Hello World");
w pasku adresu, to zadziała.
Podejrzewam, że odpowiedź na to pytanie brzmi: nie, ale po prostu zastanawiałem się, czy istnieje sposób, aby to zrobić.
javascript
url
DazManCat
źródło
źródło
http:
początku identyfikatora URI mówi przeglądarce „Chcę, abyś wysłał żądanie HTTP”, więc robi to żądanie HTTP. Myślę, że nie da się tego obejść.javascript:alert("Hi");
w pasku adresu przeglądarki Firefox (28.0) i naciśnę Enter, nic się nie dzieje. Może to zostało wyłączone? ... Tak, najwyraźniej zostało wyłączone, ponieważ idiotów można było przekonać do wklejenia czegokolwiek w pasku adresu. Informacje znalazłem tutaj: stackoverflow.com/a/18782801/111036Odpowiedzi:
Nie ma hiperłącza, nie. Nie, chyba że strona zawiera skrypt specjalnie do tego celu i sprawdza jakiś parametr ... ale jeśli chodzi o twoje pytanie, nie, nie ma wbudowanej obsługi w przeglądarkach.
Istnieją jednak bookmarklety, które możesz dodać do zakładek, aby szybko uruchamiać funkcje JavaScript z paska adresu; Nie jestem pewien, czy to spełnia Twoje potrzeby, ale jest tak blisko, jak to tylko możliwe.
źródło
Pisz w pasku adresu
Upewnij się, że piszesz na początku: javascript:
źródło
javascript:
prefiks z paska adresu.javascript:
ręcznieMożesz użyć identyfikatorów URI danych. Na przykład:
data:text/html,<script>alert('hi');</script>
Więcej informacji można znaleźć na stronie : https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
źródło
Navigation to toplevel data: URI not allowed (Blocked loading of: “data:text/html,<script>alert('hi');</script>”)
Chrome 80.0.3987.162 (Official Build) (64-bit)
Firefox 72.0.2 (64 bit)
/test.html#alert('heello ')
źródło
możesz również umieścić następujące
do kodu html, a po kliknięciu hiperłącza „Kliknij mnie” na pasku adresu URL pojawi się skrypt javascript i pojawi się okno dialogowe Alert
źródło
Informacje o
window.location.hash
właściwości:Zwróć zakotwiczoną część adresu URL.
Przykład 1:
Przykład 2:
Przykład 3:
źródło
Korzystanie z odpowiedzi Eddy'ego zadziałało bardzo dobrze, ponieważ miałem podobny problem. Po prostu wywołaj swój adres URL z parametrami: „www.mypage.html # myAnchor”
Następnie w mypage.html:
źródło
możesz użyć takiej sytuacji: na przykład masz stronę:
http://www.example.com/page.php
następnie w tym page.php wstaw ten kod:następnie za każdym razem, gdy odwiedzasz ten adres URL:
http://www.example.com/page.php?doaction=blabla
wtedy alert zostanie wywołany automatycznie.
źródło