lima-city: Webhosting, Domains und Cloud
1 Pluspunkt 0 Minuspunkte

Ich habe ein Div

<div class="background-div"></div>

und mit CSS setze ich ein Bild als Hintergrund.

.background-div { 
    background-image: url('bild.jpg'); 
} 

 aber wenn ich in Javascript versuche das Bild auszulesen funktioniert das nicht. 

console.log(document.getElementById('background-div').style.backgroundImage);
bezieht sich auf eine Antwort auf: HTML Bild als Hintergrund in einem Div
von  

1 Antwort

1 Pluspunkt 0 Minuspunkte

Du versuchst die Eigenschaft direkt vom DOM Element zu lesen, aber dieses style Objekt gibt nur "inline styles" (direkt im HTML gesetzt) zurück. Da dein Hintergrundbild über eine CSS Klasse gesetzt wird musst du getComputedStyle verwenden, um die tatsächlich berechneten (also angewandten) Styles zu erhalten.

const elem = document.getElementById('background-div');
const style = window.getComputedStyle(elem);
const imageUrl = style.backgroundImage.match(/url\("(.*)"\)/)[1];
console.log(imageUrl);
von (397 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2.3k Fragen

2.8k Antworten

261 Kommentare

13 Nutzer