1. #1
    Avatar von x BoooM x
    Registriert seit
    30.11.2011
    Beiträge
    1.261
    Thanked 588 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
    Avatar von CDLF
    Registriert seit
    28.03.2013
    Beiträge
    384
    Thanked 198 Times in 133 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
    Avatar von x BoooM x
    Registriert seit
    30.11.2011
    Beiträge
    1.261
    Thanked 588 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
    Avatar von CDLF
    Registriert seit
    28.03.2013
    Beiträge
    384
    Thanked 198 Times in 133 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.