1. #1
    U-Labs Plus-Mitglied
    Avatar von x BoooM x
    Registriert seit
    30.11.2011
    Beiträge
    1.257
    Thanked 587 Times in 260 Posts

    Standard Möglich eine Abfrage anzuzeigen, bevor ein bestimmter Link ausgeführt wird?

    Hey,

    ich habe mal bezüglich einer Kleinigkeit eine Frage.

    Und zwar habe ich auf einer Seite wo ich als Nutzer angemeldet bin einen Button zum Anklicken, wo beim Anklicken direkt ein Link geöffnet bzw. ausgeführt wird. Man kann davon jedenfalls die Link-Adresse kopieren. Ist es irgendwie möglich diesen Link irgendwo einzutragen, zum Beispiel in eine Browsererweiterung oder so um dafür festzulegen, dass man das Ganze erst mit "Ok" oder so bestätigen muss?

    Oder kann man ein kleines Programm schreiben, das im Hintergrund läuft, welches auf den Browser zugreift und überprüft, ob man diesen Link öffnet?

    Danke.
    Geändert von x BoooM x (09.12.2016 um 14:08 Uhr)

  2. #2
    U-Labs Routinier
    Avatar von CDLF
    Registriert seit
    28.03.2013
    Beiträge
    383
    Thanked 195 Times in 132 Posts

    Standard AW: Möglich eine Abfrage anzuzeigen, bevor ein bestimmter Link ausgeführt wird?

    Ja ist möglich. Den Wert im href-Attribut des Links per JS durch eine entsprechende JS-Funktion ersetzen, die zuerst mit confirm() nachfragt, ob man wirklich weg navigieren möcht, und falls JA, dann die entsprechende Umleitung durchführt.
    Das entsprechende JS kannst du einfach per GreaseMonkey (Firefox) oder TemperMonkey (Chrome) einschleusen.

  3. The Following 3 Users Say Thank You to CDLF For This Useful Post:

    DMW007 (17.12.2016), Pizzabäcker (19.06.2017), x BoooM x (19.12.2016)

  4. #3
    U-Labs Plus-Mitglied
    Avatar von x BoooM x
    Registriert seit
    30.11.2011
    Beiträge
    1.257
    Thanked 587 Times in 260 Posts

    Standard AW: Möglich eine Abfrage anzuzeigen, bevor ein bestimmter Link ausgeführt wird?

    Sorry, aber ich verstehe da nur Bahnhof

    Könntest du mir den benötigten Codeabschnitt für Greasemonkey bitte mal nennen, wenn die URL als Beispiel Google lautet? Hinter dem / steht übrigens immer irgendeine andere Zahl. Ist das ein Problem oder reicht es, wenn man den Anfang der URL angibt? Weiß ja nicht, ob es da eventuell Platzhalter wie zum Beispiel ein Sternchen * gibt.
    Geändert von x BoooM x (19.12.2016 um 21:47 Uhr)

  5. #4
    U-Labs Routinier
    Avatar von CDLF
    Registriert seit
    28.03.2013
    Beiträge
    383
    Thanked 195 Times in 132 Posts

    Standard AW: Möglich eine Abfrage anzuzeigen, bevor ein bestimmter Link ausgeführt wird?

    Spoiler:
    PHP-Code:
    // ==UserScript==
    // @name         Confirm Links
    // @namespace    http://u-labs.de/
    // @version      0.1
    // @description  Möglich eine Abfrage anzuzeigen, bevor ein bestimmter Link ausgeführt wird?
    // @author       CDLF
    // @match        *://*/*
    // @grant        none
    // ==/UserScript==


    function confirmLink(link)
    {
        
    // ask user for confirmation first
        
    if (confirm('Goto "' link '"?'))
        {
            
    // redirect
            
    window.location.href link;
        }
    }


    function 
    replaceLinkHandler()
    {
        
    // get the element
        
    var element document.getElementById('myLink');

        if (
    element !== null)
        {
            
    // store its hypertext reference
            
    var target element.href;

            
    // replace href
            
    element.href 'javascript:ulabs_confirmLink("' target '")';
        }
    }


    function 
    replaceLinkHandlers()
    {
        var 
    elements document.getElementsByClassName('_Gs');

        for(var 
    0max elements.lengthmaxi++)
        {
            var 
    target elements[i].href;
            
    elements[i].href "javascript:ulabs_confirmLink('" target "')";
        }
    }


    window.ulabs_confirmLink confirmLink;
    replaceLinkHandler();
    replaceLinkHandlers(); 


    Die @match-Klausel sollte man noch entsprechend dem Ziel anpassen; aktuell wird das Skript auf jeder Seite ausgeführt.

    replaceLinkHandler() dient zum Ersetzen des Links eines einzelnen Elements, das man zB anhand seiner ID bestimmen kann oder man wählt das n-te einer Klasse ( ...byClassName('myClass')[n] ).

    replaceLinkHandlers() führt das ganze für mehrere Links (zB mit der selben Klasse) durch.
    Beispiel: Die Klasse _Gs wird von Google für die einzelnen Links im Footer verwendet.

  6. The Following 2 Users Say Thank You to CDLF For This Useful Post:

    Pizzabäcker (19.06.2017), x BoooM x (25.12.2016)

Ähnliche Themen

  1. onsubmit wird erst nach neuladen der Seite ausgeführt
    Von derHackerLP im Forum Webentwicklung
    Antworten: 0
    Letzter Beitrag: 13.11.2014, 01:28
  2. Screenshot in bestimmter Größe erstellen
    Von Essah im Forum Software
    Antworten: 6
    Letzter Beitrag: 28.06.2014, 22:27
  3. [Java] Problem mit If-Abfrage
    Von rVs14 im Forum Sourcecode
    Antworten: 14
    Letzter Beitrag: 21.06.2012, 17:54
  4. Antworten: 1
    Letzter Beitrag: 23.04.2012, 22:59
  5. [Javascript] 2 Fache Abfrage
    Von Essah im Forum Webentwicklung
    Antworten: 1
    Letzter Beitrag: 27.03.2012, 17:33
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191