Manu: Link verzögern

Hallo zusammen,

würde gern ein Textlink verzögern.
Das soll so aussehen: nach laden der Seite erscheint der text „bitte warten“ (kein Link)
 und nach einer gewissen zeit erscheint „Enter“ als link.

Kenn mich nicht so mit Java aus, das muss etwas mit „time out“ sein, aber wie??

Würde mich freuen wenn jemand weis wie man das machen könnte.

Gruß
Manu

  1. Hallo,

    Bist Du Dir sicher, dass dieses Vorgehen sinnvoll ist? Besteht dazu wirklich ein Grund oder warum willst Du den Benutzer nötigen, erstmal zu warten, bevor er Deine Webpräsenz zu Gesicht bekommt?

    Lösbar wäre die Problematik wenn ich Dich richtig verstehe mit: http://de.selfhtml.org/javascript/objekte/window.htm#set_timeout

    Gruss
    gant

    1. Hallo,

      Bist Du Dir sicher, dass dieses Vorgehen sinnvoll ist? Besteht dazu wirklich ein Grund oder warum willst Du den Benutzer nötigen, erstmal zu warten, bevor er Deine Webpräsenz zu Gesicht bekommt?

      Lösbar wäre die Problematik wenn ich Dich richtig verstehe mit: http://de.selfhtml.org/javascript/objekte/window.htm#set_timeout

      Gruss
      gant

      Es geht um folgendes, auf der Seite befindet sich ein Werbebanner der auch verzögert kommt, so um ca 3 Sekunden.

      Es ist aber möglich sofort auf dem Enter Link zu drücken, so das der Werbebanner  nicht geladen wird.
      Daher würde ich gern den Link um ca 3 Sekunden verzögern, da muss auch nicht unbedingt "Bitte warten" stehen, das ist tatsächlich Nötigung.

      Danke für den verweis von Dir, kannte das schon, aber komme nicht so richtig weiter, wie gesagt, kenn mich nicht so richtig mit java aus.

      Gruß
      Manu

      1. Hi!

        Es ist aber möglich sofort auf dem Enter Link zu drücken, so das der Werbebanner  nicht geladen wird.
        Daher würde ich gern den Link um ca 3 Sekunden verzögern, da muss auch nicht unbedingt "Bitte warten" stehen, das ist tatsächlich Nötigung.

        Oh oh...
        Also ich empfinde das in jedem Fall als Nötigung - ganz egal, ob da jetzt "Bitte warten" steht oder nicht...
        Du zwingst dem User doch auf, daß er auf den Werbebanner wartet, bevor er die eigentliche Site besuchen kann.

        Was ist denn eigentlich mit den Usern (wie z.B. mir), die eine werbeblockende Software einsetzen und nichts von dem Werbebanner zu sehen bekommen?

        Und was ist mit den Usern, die gar kein JavaScript nutzen (können)?

        Wenn jetzt ein User deine Site besucht, der nicht die Möglichkeit hat JS zu nutzen.
        Der wird die eigentliche Site dann nicht betreten können, weil der "Enter"-Link dann niemals eingeblendet wird.
        Ein "Sie müssen JavaScript aktivieren, damit sie diese Site benutzen können" hilft auch nicht weiter.
        Die Leute, die JS absichtlich deaktiviert haben, werden in den meisten Fällen sicherlich deine Site einfach wieder verlassen, anstelle JS zu aktivieren.
        Und dann gibt es auch noch eine Menge Leute, die aus verschiedenen Gründen gar nicht die Möglichkeit haben, JS zu nutzen.
        Wenn dir die Zugänglichkeit deiner Site wichtig ist, mußt du einen NoScript-Bereich einfügen, so daß der Enter-Link bei Nicht-JS-Usern direkt angezeigt wird.

        Danke für den verweis von Dir, kannte das schon, aber komme nicht so richtig weiter,

        Was heißt das? Wo kommst du nicht weiter?
        Du mußt das Problem schon ein wenig genauer beschreiben, wenn man dir helfen soll.
        wucher wichtel hat doch schon fast vollständigen Code gepostet.
        Was davon verstehst du nicht?

        wie gesagt, kenn mich nicht so richtig mit java aus.

        Java und JavaScript sind zwei völlig verschiedene Dinge.

        Schöner Gruß,
        rob

  2. Hallo!

    Du brauchst irgendein Element, in dem der Text ist (z.b. ein <div> oder <p>). Diesem Element gibst du eine ID. Der Inhalt des Elementes ist dann der "bitte warten"-Text. Dann rufst du per onload verzögert eine Funktion auf, die per innerHTML den Text des Elementes ändert.

    Der Aufruf könnte so aussehen:

      
    window.onload = function(){  
      setTimeout("textAendern()", 5000); // textAendern() ist die Funktion  
                                         // die mit innerHTML den Inhalt des  
                                         // Elementes ändert. Die 5000 sind  
                                         // die Millisekunden, die bis zum  
                                         // Aufruf der Funktion verstreichen  
                                         // sollen.  
    }  
    function textAendern(){  
      // ...  
    }  
    
    

    -> http://de.selfhtml.org/javascript/objekte/all.htm#inner_html
    -> http://de.selfhtml.org/javascript/objekte/window.htm#set_timeout

    Allerdings glaube ich nicht, dass dein Vorhaben wirklich sinnvoll ist. Überlege nochmal, ob es wirklich nötig ist, den Besucher deiner Seite warten zu lassen, bis er weiter klicken darf.

    ciao, ww

    --
    Schäuble:
      "Wir können alles. Außer Rechtsstaat."
    1. Hallo!

      Du brauchst irgendein Element, in dem der Text ist (z.b. ein <div> oder <p>). Diesem Element gibst du eine ID. Der Inhalt des Elementes ist dann der "bitte warten"-Text. Dann rufst du per onload verzögert eine Funktion auf, die per innerHTML den Text des Elementes ändert.

      Der Aufruf könnte so aussehen:

      window.onload = function(){
        setTimeout("textAendern()", 5000); // textAendern() ist die Funktion
                                           // die mit innerHTML den Inhalt des
                                           // Elementes ändert. Die 5000 sind
                                           // die Millisekunden, die bis zum
                                           // Aufruf der Funktion verstreichen
                                           // sollen.
      }
      function textAendern(){
        // ...
      }

      
      >   
      > -> <http://de.selfhtml.org/javascript/objekte/all.htm#inner_html>  
      > -> <http://de.selfhtml.org/javascript/objekte/window.htm#set_timeout>  
      >   
      > Allerdings glaube ich nicht, dass dein Vorhaben wirklich sinnvoll ist. Überlege nochmal, ob es wirklich nötig ist, den Besucher deiner Seite warten zu lassen, bis er weiter klicken darf.  
      >   
      > ciao, ww  
      >   
        
      Danke für Deine Antwort, komme da nicht so ganz klar mit, wie gesagt java ist leider nicht meine Stärke :-)  
        
      Das sieht ganz schön kompliziert aus, ist es einfach den Link erst nach 3 Sekunden zu aktivieren. Also erst nur Text, und nach 3 Sekunden ist es ein Textlink??  
        
      Gruß  
      Manu  
      
      
      1. Hallo!

        Hast du dir die Seiten durchgelesen, die ich dir verlinkt habe?

        wie gesagt java ist leider nicht meine Stärke :-)

        Meine auch nicht. Java habe ich zwar mal angefangen, war damit aber etwas überfordert. Jetzt warte ich einfach, bis ich es in meiner Ausbildung lerne :-) Merke: Java ist nicht das gleiche wie JavaScript.

        Also erst nur Text, und nach 3 Sekunden ist es ein Textlink??

          
        <div id="enter">  
          bitte warten  
        </div>  
        
        
          
        function textAendern(){  
          document.getElementById("enter").innerHTML = "<a href='url/zu/deiner/seite.html'>enter</a>";  
        }  
        
        

        Jetzt musst du das ganze nur noch mit dem onload-Aufruf kombinieren und die richtige Zeit angeben. Das wirst du schon schaffen :-)

        ciao, ww

        --
        Schäuble:
          "Wir können alles. Außer Rechtsstaat."
        1. Moin

          tja, und User ohne aktiviertem JavaScript warten und warten und warten ... und wenn sie nicht zur Konkurrenz wechseln warten sie in alle Ewigkeit.

          Diese Lösung hat also deutliche Defizite!

          Gruß
          rfb

          --
          Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
          (Galileo Galilei)
          1. Hallo!

            Diese Lösung hat also deutliche Defizite!

            Jap.

            ciao, ww

            --
            Schäuble:
              "Wir können alles. Außer Rechtsstaat."
  3. Danke für eure Hilfe, ich habs nun hinbekommen :-)

    Gruß
    Manu