Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 16
  1. #1
    Yufiel ist offline Grünschnabel
    registriert
    27-04-2011
    Beiträge
    5

    Browser zu schnell für Click Event

    Hallo,
    folgendes Problem nervt mich.
    Wir haben ein Projekt (Webseite), bei dem auf einen Klick hin, Daten überprüft und verschickt werden sollen, aber ein Link auf den der Klick stattfand, soll trozdem ausgeführt werden.
    Prinzipell funzt das auch, wenn die nachfolgende Webseite etwas länger zum laden braucht. Wenn sie zu schnell läd, wird die Überprüfung der Daten nicht mehr durchgeführt, weil die neue Webseite halt zu schnell da ist.

    Hat jemand eine Idee, wie ich das Laden der neuen Webseite um ca. 100ms verzögern kann?
    Das würde ausreichen, damit die Daten überprüft und verschickt werden können.

    Ich hoffe auf Ideen und Anregungen,
    Yufiel

    P.S. Die Daten werden nicht mit Ajax verschickt (weil sie nicht zur gleichen Domain gesendet werden).

  2. #2
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Browser zu schnell für Click Event

    Kommt drauf wie du das alles machst.

  3. #3
    Yufiel ist offline Grünschnabel
    registriert
    27-04-2011
    Beiträge
    5

    AW: Browser zu schnell für Click Event

    Also es wird einfach nur auf das Click Event hin, ein HTML Element zum DOM hinzugefügt, das dann eine URL mit den Daten aufruft.
    Aber das neu parsen des DOMs dauert halt so lange, das der Browser zuvor wohl schon die Seite wechselt und das Script abbricht. Soweit meine Vermutungen jedenfalls.

  4. #4
    Avatar von Junkee[]
    Junkee[] ist offline Lounge-Member
    registriert
    08-05-2009
    Ort
    Leonberg
    Beiträge
    3.169

    AW: Browser zu schnell für Click Event

    Der Browser führt den JS Code aus und wechselt dann sofort (er macht dann keinen weiteren Tick) bei einem klick auf einen Link. Du musst also verhindern dass der Link weiterleitet. Dass kannst du mit return false; bzw. preventDefault erreichen. Dann leitest du einfach am Ende mit document.location = LINK.href; auf die url vom Link weiter.

  5. #5
    Yufiel ist offline Grünschnabel
    registriert
    27-04-2011
    Beiträge
    5

    AW: Browser zu schnell für Click Event

    Jo, hatte ich auch schon mal angedacht, aber das hat auch so seine nachteile, z.b. wenn der Link mit target='_blank' aufgerufen werden soll, oder noch ein weiteres onclick event registriert wurde, das die zielseite aufruft usw..
    Es geht so, ja, aber schön und allgemein gehalten ist es auch nicht.

  6. #6
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Browser zu schnell für Click Event

    Was erwartest du?
    Deine Funktionalität ist nicht allgemein gehalten, da du versuchst zwei Dinge gleichzeitig zu machen, besser wäre es, wenn du dieses Problem Serverseitig lösen könntest.

    Das target Attribut wird sowieso von den meisten Browsern mittlerweile per einstellung ignoriert und ist auch nicht sinnvoll. Aber wenn du unbedingt ein Fenster öffnen willst, musst du es wohl mit window.open machen.

  7. #7
    Yufiel ist offline Grünschnabel
    registriert
    27-04-2011
    Beiträge
    5

    AW: Browser zu schnell für Click Event

    Das Javascript an dem ich bastel soll einfach parallel zu jeder Webseite laufen können, ohne diese in der Funktionalität einzuschränken. Das ist vorraussetzung. Leider fällt daher die Server-seitige abarbeitung raus und die verarbeitung der Links abzubrechen und dann selber aufzurufen ist meinem Chef zu riskant (weil man nicht 100%ig sicher sein kann, das die Webseite noch wie gewohnt funzt).

  8. #8
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Browser zu schnell für Click Event

    Das klingt unlogisch. Alle Lösungen die funktioneren lehnst du (oder dein Chef) ab und das was nicht funktioniert wollt ihr unbedingt machen.

  9. #9
    Yufiel ist offline Grünschnabel
    registriert
    27-04-2011
    Beiträge
    5

    AW: Browser zu schnell für Click Event

    Naja, solange es noch hoffnung gibt ne bessere Lösung zu finden, probieren wir es noch... Ich denke aber auch, das wir schlussendlich bei der Lösung von oben landen werden. Aber man muss ja erstmal alles gründlich durchdenken bevor man sich entscheidet.

  10. #10
    Avatar von miniA4kuser
    miniA4kuser ist offline Lounge-Member
    registriert
    12-07-2006
    Beiträge
    3.034

    AW: Browser zu schnell für Click Event

    Du machst da glaube ich einen generellen Denkfehler

    Zitat Zitat von Yufiel Beitrag anzeigen
    Hat jemand eine Idee, wie ich das Laden der neuen Webseite um ca. 100ms verzögern kann?
    Das würde ausreichen, damit die Daten überprüft und verschickt werden können.
    Was ist wenn das Ergebnis der Datenprüfung negativ ausfällt?
    Hoffe ich konnte helfen

  11. #11
    Max Matti ist offline Foren As
    registriert
    01-04-2011
    Beiträge
    75

    AW: Browser zu schnell für Click Event

    also ich würde einen timeout setzen:
    setTimeout("funktion();", 500);
    erst den zu interpretierenden Quelltext und dann die Zeitverzögerung in Milisekunden.

    oder du gibst ein signal und sobald das kommt, lädt die seite.
    Geändert von Max Matti (27-04-2011 um 19:47 Uhr) Grund: 2. vorschlag

  12. #12
    Avatar von Junkee[]
    Junkee[] ist offline Lounge-Member
    registriert
    08-05-2009
    Ort
    Leonberg
    Beiträge
    3.169

    AW: Browser zu schnell für Click Event

    Das ist die dümmste "Lösung" die es für das Problem gibt. Ist das Script schnell genug fertig wartet bis zu einer halben Sekunde (hört sich nicht nach viel an, ist aber störend). Ist das Script total langsam (aus welchem Grund auch immer) reicht die Zeit vll. nicht aus. Es muss sich hierbei um einen asynchronen Vorgang handeln weil der Browser den onclick-Code immer ausführt.

  13. #13
    Max Matti ist offline Foren As
    registriert
    01-04-2011
    Beiträge
    75

    AW: Browser zu schnell für Click Event

    Kannst du einen boolean einbauen, der auf true gesetzt wird, wenn die Prüfung fertig ist und im body-tag lädst du mit onload die Seite neu, wenn der Boolean false ist.

  14. #14
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.612

    AW: Browser zu schnell für Click Event

    ??? Diese Anweisung verstehe ich nicht...

  15. #15
    Max Matti ist offline Foren As
    registriert
    01-04-2011
    Beiträge
    75

    AW: Browser zu schnell für Click Event

    ein boolean ist ein Wert, der entweder true oder false ist.
    Du hast den irgendwo stehen (wo es am günstigsten ist) und am Anfang ist er false.
    Dann setzt du ihn beim Beenden der Datenprüfung auf true und im body-tag der Seite, die zu schnell lädt schreibst du: onload="if(abc){seiteNeuLaden();}" (die Funktion musst du natürlich selber erstellen).
    Oder du machst es mith. v. PHP im head:
    PHP-Code:
    <?php
    if ($abc) {
        echo(
    '<meta http-equiv="refresh" content="5; URL=#">');
    }
    ?>
    (Bei diesem Quellcode weiss ich nicht, welche Zeichen im echo-String maskiert werden müssen).

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Mausrad-Click Event abfangen
    Von TM4rkuS im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 12-03-2011, 22:05
  2. Antworten: 6
    Letzter Beitrag: 20-11-2010, 01:38
  3. Mootools - Drag and Drop + click Event
    Von Lo3ty im Forum JavaScript
    Antworten: 17
    Letzter Beitrag: 19-02-2010, 15:45
  4. Click Event per software ausführen
    Von taikahn im Forum JavaScript
    Antworten: 4
    Letzter Beitrag: 01-07-2009, 18:02
  5. Event Auslöser (Callee von Event Objekt)?
    Von sacharja im Forum JavaScript
    Antworten: 14
    Letzter Beitrag: 16-03-2007, 09:21

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •