Javascript - eine kurze Frage:

Thema wurde von Frankenwald Hanf-Shop, 2. Juli 2022 erstellt.

  1. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Ich hab für Cookie-Texte einen Paragrafen
    Code:
    <p></p>
    mit der
    Code:
    class=pdfNotice
    . Jetzt will ich diesen Paragrafen ausblenden wenn
    Code:
    id="adobe-dc-view"
    Code:
    .classList.contains('ViewSDK_parentRelativeHeight')
    
    .
    Die Bedingung:
    Code:
    if (document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('pdfNotice', 'hidden');
    }
    funktioniert in der Console aber nicht in einem Javascript unter /GXModules/...
    Dieses Javascript liegt im selber Ordner in dem ein Javascript liegt welches mit der selben Funktion einen anderen Cookie-Text ausblendet. Das funktioniert tadellos.
    Wo übersehe ich den Fehler?

    Die ganze Funktion sieht so aus:

    Code:
    window.onload = (event) => {
    if (document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('pdfNotice', 'hidden');
    }
    if (!document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('hidden', 'pdfNotice');
    }
    };
     
    Zuletzt bearbeitet: 2. Juli 2022
  2. Dominik Späte

    Dominik Späte Erfahrener Benutzer

    vs.
    Ich weiß nicht, ob's zusätzlich noch pdfNotice als id hat. Aber zwecks Zugriff via Klasse wäre dann (bei nur einem Element) z.B. das hier:
    Code:
    document.querySelector('.pdfNotice')
     
  3. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    es liegt irgendwie am window.onload ... o_O
    Ohne den Aufruf
    Code:
    window.onload = (event) => {}
    funktionieren die beiden Bedingungen.

    Code:
    if (document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('pdfNotice', 'hidden');
    }
    if (!document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('hidden', 'pdfNotice');
    }
     
  4. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    p.s auf der Startseite funktioniert es mit
    Code:
    style.display = 'none'
    if (emelent.style.display = none) bla etc usw
     
  5. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Ist das so ne Art schlechter Witz?
    Code:
    window.onload = () => {}
     
  6. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Code:
    window.onload = (socialFeed) => {
        if (document.getElementById('instagram').style.display != 'none') {
            document.getElementById('socialFeedNotice').classList.replace('show', 'hidden');
        }
        if (document.getElementById('instagram').style.display == 'none') {
            document.getElementById('socialFeedNotice').classList.replace('hidden', 'show');
        }
        if (document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
            document.getElementById('pdfNotice').classList.replace('pdfNotice', 'hidden');
        }
        if (!document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
            document.getElementById('pdfNotice').classList.replace('hidden', 'pdfNotice');
        }
    };
    

    Die socialFeedNotice wird ausgeblendet wenn #id display: block aber die pdfNotice nicht wenn #id contains {ViewSDK_parentRelativeHeight}

    ViewSDK_parentRelativeHeight hat man nur in der Klasse wenn das Cookie akzeptiert wurde.
     
  7. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Es funktioniert jetzt mit setTimeout

    Code:
    setTimeout(() => {
      if (document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('show', 'hidden');
      }
      if (!document.getElementById('adobe-dc-view').classList.contains('ViewSDK_parentRelativeHeight')) {
      document.getElementById('pdfNotice').classList.replace('hidden', 'show');
      }
    }, 2000);