15.12.2022, 19:08
Hi,
ja es gibt da eine einfache Lösung - hier meine Codeschnipsel dazu:
Wenn ich es richtig verstanden habe soll die Funktion unabhängig der ID zur verfügung stehen. Deswegen habe ich allen Elementen einen EventListener gegeben wo die CSS-Klasse 'hidden' getogglelt wird.
Viele Grüße
rzscout
ja es gibt da eine einfache Lösung - hier meine Codeschnipsel dazu:
Code:
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Details anzeigen</title>
<style>
.hidden {
display: none;
}
</style>
<script>
var detailToggleList;
document.addEventListener('DOMContentLoaded', function() {
detailToggleList = document.querySelectorAll('.detail-toggle > p');
detailToggleList.foreach(function(item, index) {
item.addEventListener('click', function(item, index){
let myparent = item.parentElement;
myparent.querySelector('.detail-content').classList.toggle('hidden');
});
});
});
</script>
</head>
<body>
<div class="detail-toggle" id="<?php $pageBuilder->item->id; ?>">
<p>Mehr Infos</p>
<div class="detail-content hidden">
<?php echo $pageBuilder->item->content; ?>
</div>
</div>
<div class="detail-toggle" id="<?php $pageBuilder->item->id; ?>">
<p>Mehr Infos</p>
<div class="detail-content hidden">
<?php echo $pageBuilder->item->content; ?>
</div>
</div>
<div class="detail-toggle" id="<?php $pageBuilder->item->id; ?>">
<p>Mehr Infos</p>
<div class="detail-content hidden">
<?php echo $pageBuilder->item->content; ?>
</div>
</div>
<div class="detail-toggle" id="<?php $pageBuilder->item->id; ?>">
<p>Mehr Infos</p>
<div class="detail-content hidden">
<?php echo $pageBuilder->item->content; ?>
</div>
</div>
<div class="detail-toggle" id="<?php $pageBuilder->item->id; ?>">
<p>Mehr Infos</p>
<div class="detail-content hidden">
<?php echo $pageBuilder->item->content; ?>
</div>
</div>
</body>
</html>
Wenn ich es richtig verstanden habe soll die Funktion unabhängig der ID zur verfügung stehen. Deswegen habe ich allen Elementen einen EventListener gegeben wo die CSS-Klasse 'hidden' getogglelt wird.
Viele Grüße
rzscout
"Gerne dürft ihr mir eine gute Bewertung da lassen aber auch gegenüber Kritik bin ich offen"