10.04.2024, 07:33
hallo,
ich brauche ein js, das notiert, in welcher reihenfolge eine bestimmte anzahl von karten, die in einem karten-container liegen, angeklickt worden sind und es später in die zwischenablage transportiert
beide scipte funktionieren nicht. was ist daran falsch?
script #1
document.addEventListener('DOMContentLoaded', function() {
let kartenReihenfolge = [];
document.querySelectorAll('.card').forEach((card, index) => {
card.addEventListener('click', function() {
if (!this.classList.contains('selected')) {
this.classList.add('selected');
const kartenName = this.querySelector('.card-front').getAttribute('alt');
const aufDemKopf = this.querySelector('.card-front').style.transform === 'rotate(180deg)';
kartenReihenfolge.push(`${kartenName} ${aufDemKopf ? '(auf dem Kopf)' : ''}`);
}
});
});
window.kopiereInZwischenablage = function() {
const ergebnisText = kartenReihenfolge.join('\n');
navigator.clipboard.writeText(ergebnisText).then(() => {
alert("Ergebnisse wurden in die Zwischenablage kopiert.");
}, (err) => {
console.error('Fehler beim Kopieren: ', err);
});
};
});
script #2
"use strict";
document.addEventListener('DOMContentLoaded', function() {
let gezogeneKarten = [];
document.querySelectorAll('.card').forEach(card => {
card.addEventListener('click', function() {
if (!this.classList.contains('selected')) {
this.classList.add('selected');
const kartenName = this.querySelector('.card-front').getAttribute('alt');
const aufDemKopf = this.querySelector('.card-front').style.display === 'none' ? 'Nein' : 'Ja';
gezogeneKarten.push({ kartenName, aufDemKopf });
if (gezogeneKarten.length <= 6) {
console.log(`Karte gezogen: ${kartenName}, Auf dem Kopf: ${aufDemKopf}`);
} else {
alert('Du kannst keine weiteren Karten auswählen.');
}
}
});
});
function kopiereErgebnisseInZwischenablage() {
let ergebnisText = 'Deine Auswahl:\n';
gezogeneKarten.forEach((karte, index) => {
ergebnisText += `${index + 1}. Karte: ${karte.kartenName}, Auf dem Kopf: ${karte.aufDemKopf}\n`;
});
navigator.clipboard.writeText(ergebnisText).then(() => {
alert("Ergebnisse wurden in die Zwischenablage kopiert.");
}, (err) => {
console.error('Fehler beim Kopieren: ', err);
});
}
document.getElementById("ergebnisse-anzeigen").addEventListener("click", kopiereErgebnisseInZwischenablage);
});
ich brauche ein js, das notiert, in welcher reihenfolge eine bestimmte anzahl von karten, die in einem karten-container liegen, angeklickt worden sind und es später in die zwischenablage transportiert
beide scipte funktionieren nicht. was ist daran falsch?
script #1
document.addEventListener('DOMContentLoaded', function() {
let kartenReihenfolge = [];
document.querySelectorAll('.card').forEach((card, index) => {
card.addEventListener('click', function() {
if (!this.classList.contains('selected')) {
this.classList.add('selected');
const kartenName = this.querySelector('.card-front').getAttribute('alt');
const aufDemKopf = this.querySelector('.card-front').style.transform === 'rotate(180deg)';
kartenReihenfolge.push(`${kartenName} ${aufDemKopf ? '(auf dem Kopf)' : ''}`);
}
});
});
window.kopiereInZwischenablage = function() {
const ergebnisText = kartenReihenfolge.join('\n');
navigator.clipboard.writeText(ergebnisText).then(() => {
alert("Ergebnisse wurden in die Zwischenablage kopiert.");
}, (err) => {
console.error('Fehler beim Kopieren: ', err);
});
};
});
script #2
"use strict";
document.addEventListener('DOMContentLoaded', function() {
let gezogeneKarten = [];
document.querySelectorAll('.card').forEach(card => {
card.addEventListener('click', function() {
if (!this.classList.contains('selected')) {
this.classList.add('selected');
const kartenName = this.querySelector('.card-front').getAttribute('alt');
const aufDemKopf = this.querySelector('.card-front').style.display === 'none' ? 'Nein' : 'Ja';
gezogeneKarten.push({ kartenName, aufDemKopf });
if (gezogeneKarten.length <= 6) {
console.log(`Karte gezogen: ${kartenName}, Auf dem Kopf: ${aufDemKopf}`);
} else {
alert('Du kannst keine weiteren Karten auswählen.');
}
}
});
});
function kopiereErgebnisseInZwischenablage() {
let ergebnisText = 'Deine Auswahl:\n';
gezogeneKarten.forEach((karte, index) => {
ergebnisText += `${index + 1}. Karte: ${karte.kartenName}, Auf dem Kopf: ${karte.aufDemKopf}\n`;
});
navigator.clipboard.writeText(ergebnisText).then(() => {
alert("Ergebnisse wurden in die Zwischenablage kopiert.");
}, (err) => {
console.error('Fehler beim Kopieren: ', err);
});
}
document.getElementById("ergebnisse-anzeigen").addEventListener("click", kopiereErgebnisseInZwischenablage);
});