Frage Rufen Sie die Javascript-Funktion über die URL / Adressleiste auf


Ist es möglich, eine JavaScript-Funktion von der URL aus aufzurufen?

Etwas wie: http://www.example.com/mypage.aspx?javascript:printHelloWorld()

Ich weiß, wenn du es sagst javascript:alert("Hello World"); in die Adressleiste wird es funktionieren.

Ich vermute, die Antwort darauf ist nein, aber ich fragte mich, ob es einen Weg gab, es zu tun.


75
2017-11-12 10:51


Ursprung


Antworten:


Es gibt keinen Hyperlink, nein. Es sei denn, die Seite hat ein spezielles Skript dafür und es wird nach einem Parameter gesucht ... aber für Ihre Frage, nein, es gibt keine eingebaute Unterstützung in Browsern dafür.

Es gibt jedoch Bookmarklets Sie können ein Lesezeichen setzen, um JavaScript-Funktionen schnell von Ihrer Adressleiste aus auszuführen. nicht sicher, ob das Ihren Bedürfnissen entspricht, aber es ist so nah wie es nur geht.


47
2017-11-12 10:54



Schreibe in die Adressleiste

javascript:alert("hi");

Stelle sicher, dass du am Anfang schreibst: javascript:


13
2017-11-30 05:13



/test.html#alert('heello ')

test.html
<button onClick="eval(document.location.hash.substring(1))">do it</button>

8
2017-11-12 11:02



Sie können Daten-URIs verwenden. Beispielsweise: data:text/html,<script>alert('hi');</script>

Für weitere Informationen besuchen Sie: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs


6
2017-09-07 18:38



Sie können auch den folgenden Platz angeben

<a href='javascript:alert("hello world!");'>Click me</a>

zu Ihrem HTML-Code, und wenn Sie auf "Klicken Sie mich" Hyperlink klicken, wird Javascript in der URL-Leiste angezeigt und Alert-Dialog wird angezeigt


4
2017-11-12 11:03



Sie können wie folgt vorgehen: Zum Beispiel haben Sie eine Seite: http://www.example.com/page.php dann in dieser Seite.php, fügen Sie diesen Code ein:

if (!empty($_GET['doaction']) && $_GET['doaction'] == blabla ){
echo '<script>alert("hello");</script>';
}

dann, wann immer du diese URL besuchst: http://www.example.com/page.php?doaction=blabla

dann wird der Alarm automatisch aufgerufen.


2
2018-03-26 13:05



Über die window.location.hash Eigentum:

Liefert den Ankerteil einer URL zurück.


Beispiel 1:

//Assume that the current URL is 

var URL = "http://www.example.com/test.htm#part2";

var x = window.location.hash;

//The result of x will be:

x = "#part2"

Beispiel 2:

$(function(){   
    setTimeout(function(){
        var id = document.location.hash;
        $(id).click().blur();
    }, 200);
})

Beispiel 3:

var hash = "#search" || window.location.hash;
window.location.hash = hash; 

switch(hash){   
case "#search":  
    selectPanel("pnlSearch");
    break;    
case "#advsearch":    

case "#admin":  

}

1
2018-03-14 04:16



Die Verwendung von Eddys Antwort funktionierte sehr gut, da ich das gleiche Problem hatte. Rufen Sie einfach Ihre URL mit den Parametern: "www.mypage.html # myAnchor"

Dann, in meiner Seite.html:

$(document).ready(function(){
  var hash = window.location.hash;
  if(hash.length > 0){
    // your action with the hash
  }
});

1
2017-12-29 11:16