Windows 10 reached EOS (end of support) on October 14, 2025. For more information, see this article.

Hilfe durchsuchen

Vorsicht vor Support-Betrug: Wir fordern Sie niemals auf, eine Telefonnummer anzurufen, eine SMS an eine Telefonnummer zu senden oder persönliche Daten preiszugeben. Bitte melden Sie verdächtige Aktivitäten über die Funktion „Missbrauch melden“.

Weitere Informationen

Iframe immediately recreated

  • 3 Antworten
  • 1 hat dieses Problem
  • 20 Aufrufe
  • Letzte Antwort von CzBiX

Weitere Optionen

https://jsfiddle.net/4cd3u0fL/1/

Steps to reproduce click the button

What is expected? Show text in iframe and output [true, true]

What is actually happening? iframe is empty, and output [true, false] in Firefox

This demo works in Chrome, but failed on Firefox v75-76.

https://jsfiddle.net/4cd3u0fL/1/ '''Steps to reproduce''' click the button '''What is expected?''' Show text in iframe and output [true, true] '''What is actually happening?''' iframe is empty, and output [true, false] in Firefox This demo works in Chrome, but failed on Firefox v75-76.

Ausgewählte Lösung

@cor-el Thanks. Please have a look at this issue: https://bugzilla.mozilla.org/show_bug.cgi?id=543435

If your PC is a little bit slow, you will see the iframe show content first, then changed to blank.

Diese Antwort im Kontext lesen 👍 0

Alle Antworten (3)

Weitere Optionen
Weitere Optionen

In Firefox the result.insertAdjacentHTML immediately returns and doesn't wait until the iframe has been created. It works if I place the code in the timeout function.

function haha() {
  console.log('haha')
  const result = document.querySelector('#result')
  
  result.insertAdjacentHTML('beforebegin',  '<iframe id="iframe"></iframe>')
  
 setTimeout(() => {
 const el = document.querySelector('#iframe')
  const doc = el.contentDocument
  
  doc.body.innerHTML = 'Something'

result.innerHTML = [
      el === document.querySelector('#iframe'),
      doc === document.querySelector('#iframe').contentDocument, 
    ].join(',')
  }, 0)
}

const btn = document.querySelector('button')
btn.addEventListener('click', haha)

Geändert am von cor-el

Weitere Optionen

Ausgewählte Lösung

@cor-el Thanks. Please have a look at this issue: https://bugzilla.mozilla.org/show_bug.cgi?id=543435

If your PC is a little bit slow, you will see the iframe show content first, then changed to blank.