- jeu.php : iframe démarre sur about:blank, URL stockée dans data-src - Article.svelte : event delegation sur document (plus de timeout/querySelector) → le src de l'iframe est injecté seulement quand l'user clique (évite l'iframe noir) → supprime l'ancien $effect avec setTimeout au profit d'une délégation propre Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
19 lines
712 B
PHP
19 lines
712 B
PHP
<?php if ($block->url()->isNotEmpty()):
|
|
$iframeUrl = preg_replace('/\s+/', '', $block->url()->value());
|
|
?>
|
|
<div class="iframe-game-container" data-src="<?= htmlspecialchars($iframeUrl, ENT_QUOTES, 'UTF-8') ?>">
|
|
<iframe
|
|
width="400"
|
|
height="650"
|
|
style="border: none; overflow: hidden; pointer-events: none; display: block; width: 100%;"
|
|
src="about:blank"
|
|
></iframe>
|
|
<div class="iframe-click-overlay" data-state="initial">
|
|
<div class="overlay-content">
|
|
<div class="play-icon">▶</div>
|
|
<p class="overlay-message">Cliquez pour jouer</p>
|
|
</div>
|
|
</div>
|
|
<button class="iframe-deactivate-btn" title="Deactivate game (restore scrolling)">✕</button>
|
|
</div>
|
|
<?php endif ?>
|