Clicks auf ein Element zählen?

Fragen und Diskussionen rund um Internet, Software und PC
stobi_de
Moderator
Moderator
Beiträge: 780
Registriert: Di 11. Okt 2022, 06:30

Re: Clicks auf ein Element zählen?

Ungelesener Beitrag von stobi_de »

Kunde will dafür nichts ausgeben.
Also wenn in den letzten 10 Jahren keiner das Script angemeckert hat: für mich keinen Aufwand treiben.

Und vor allem: ich mach damit unendlichen Reichtum und kann Euch dafür nichtmals zu einem Steak einladen. Das ist schon irgendwie peinlich.
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Clicks auf ein Element zählen?

Ungelesener Beitrag von Tommy Herrmann »

Werner-Zenk.de hat geschrieben: Mi 7. Feb 2024, 19:01 Ich habe den Klickzähler aktualisiert und die JavaScript-Funktion: Intl.NumberFormat hinzugefügt.
Die Zahlenwerte werden dadurch formatiert, wenn diese mal jenseits der 1000 sind: zb: 1.645 oder: 179.521
Moin Werner,

habe diese Änderung natürlich gleich eingebaut und den Zähler mal temporär auf 1068 gesetzt. Der Tausender-Punkt wird bei mir nicht angezeigt :confused:

https://www.mobirise-tutorials.com/News ... /#Download


Klickzähler mit Format Tausender-Punkt.jpg


Nachtrag:

… wird doch angezeigt - aber erst nach einem Klick.

Das heißt aber auch, dass der Punkt sich nur darstellt, wenn jemand auch klickt. Das ist sicherlich so nicht gewollt, denn hier soll ja das angegebene Zahlenformat auch ohne Klick angezeigt werden.

Klickzähler mit Format Tausender-Punkt - nach Klick.jpg


Das aktuelle Script:

Code: Alles auswählen

  <script>
      window.addEventListener("DOMContentLoaded", () => {
         document.querySelectorAll("a[data-button]").forEach((element) => {
            element.setAttribute("title", "Download");
            element.addEventListener("click", (e) => {
               let id = e.target.dataset.button;
               // Eintagen - EDIT Tommy - Pfad angepasst
               fetch(`counter/counter.php?id=${id}`)
                  .then(() => {
                     // Auslesen - EDIT Tommy - Pfad angepasst
                     fetch(`counter/counter.php?da=${id}`)
                        .then((antwort) => {
                           return antwort.text();
                        })
                        .then((antwort) => {
                           document.querySelector(`[data-count="${id}"]`).textContent = new Intl.NumberFormat("de-DE").format(antwort) + ' x';
                        });
                  });
            });
         });
      });
  </script>
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Clicks auf ein Element zählen?

Ungelesener Beitrag von Werner-Zenk.de »

Moin Tommy,
ersetze im PHP-Teil der Datei index.php:

Code: Alles auswählen

$clicks[$id] = '<span data-count="' . $id . '">' . $hits . ' x</span>';
durch:

Code: Alles auswählen

$clicks[$id] = '<span data-count="' . $id . '">' . number_format($hits, 0, ",", ".") . ' x</span>';
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Clicks auf ein Element zählen?

Ungelesener Beitrag von Tommy Herrmann »

... ah - OK - mache ich gleich ...
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Clicks auf ein Element zählen?

Ungelesener Beitrag von Tommy Herrmann »

ja - wird alles richtig angezeigt - nur ist jetzt meine CSS weg.

Muss man da noch meine Class in PHP woanders dran bauen :eek:


P.S.:

Quatsch - hatte meine class="counter" vergessen :D

Code: Alles auswählen

// EDIT Tommy - class="counter" hinzugefügt
$clicks[$id] = '<span class="counter" data-count="' . $id . '">' . number_format($hits, 0, ",", ".") . ' x</span>';

Danke Dir :cool:
Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 146 Gäste