Tutorial: Pulsierender Rand bei Demos, Weiter-Button erst nach Abschluss
Waehrend automatischer Demos (disableNav-Steps): - Bubble-Rand pulsiert gold (animation: tutorial-bubble-pulse) - Statt Vor/Zurueck-Buttons wird "Demo laeuft..." angezeigt - Nach Abschluss der Demo: Pulsieren stoppt, Zurueck/Weiter erscheinen Bei normalen Steps (keine Demo): - Zurueck/Weiter-Buttons sind sofort sichtbar, kein Pulsieren Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
@@ -5242,3 +5242,20 @@ body.tutorial-active .tutorial-bubble,
|
||||
body.tutorial-active .tutorial-cursor {
|
||||
pointer-events: auto !important;
|
||||
}
|
||||
|
||||
/* Tutorial Bubble: Pulsieren waehrend automatischer Demo */
|
||||
@keyframes tutorial-bubble-pulse {
|
||||
0%, 100% { border-color: var(--accent); box-shadow: var(--shadow-lg), 0 0 0 0 rgba(150, 121, 26, 0); }
|
||||
50% { border-color: var(--accent-hover); box-shadow: var(--shadow-lg), 0 0 0 6px rgba(150, 121, 26, 0.25); }
|
||||
}
|
||||
.tutorial-bubble-pulsing {
|
||||
animation: tutorial-bubble-pulse 1.5s ease-in-out infinite;
|
||||
}
|
||||
.tutorial-demo-hint {
|
||||
font-size: 12px;
|
||||
color: var(--text-secondary);
|
||||
font-style: italic;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<link rel="stylesheet" href="/static/vendor/MarkerCluster.css">
|
||||
<link rel="stylesheet" href="/static/vendor/MarkerCluster.Default.css">
|
||||
<link rel="stylesheet" href="/static/css/network.css?v=20260316a">
|
||||
<link rel="stylesheet" href="/static/css/style.css?v=20260316g">
|
||||
<link rel="stylesheet" href="/static/css/style.css?v=20260316h">
|
||||
</head>
|
||||
<body>
|
||||
<a href="#main-content" class="skip-link">Zum Hauptinhalt springen</a>
|
||||
@@ -764,7 +764,7 @@
|
||||
<script src="/static/js/api_network.js?v=20260316a"></script>
|
||||
<script src="/static/js/network-graph.js?v=20260316a"></script>
|
||||
<script src="/static/js/app_network.js?v=20260316a"></script>
|
||||
<script src="/static/js/tutorial.js?v=20260316p"></script>
|
||||
<script src="/static/js/tutorial.js?v=20260316q"></script>
|
||||
<script src="/static/js/chat.js?v=20260316f"></script>
|
||||
<script>document.addEventListener("DOMContentLoaded",function(){Chat.init();Tutorial.init()});</script>
|
||||
|
||||
|
||||
@@ -1313,17 +1313,20 @@ const Tutorial = {
|
||||
|
||||
// Navigation
|
||||
var navHtml = '<div class="tutorial-bubble-nav">';
|
||||
if (index > 0 && !step.disableNav) {
|
||||
navHtml += '<button class="tutorial-btn tutorial-btn-back" onclick="Tutorial.prev()">Zurück</button>';
|
||||
if (step.disableNav) {
|
||||
// Automatische Demo läuft - keine Buttons, wird pulsieren
|
||||
navHtml += '<span class="tutorial-demo-hint">Demo läuft...</span>';
|
||||
} else {
|
||||
if (index > 0) {
|
||||
navHtml += '<button class="tutorial-btn tutorial-btn-back" onclick="Tutorial.prev()">Zur\u00fcck</button>';
|
||||
} else {
|
||||
navHtml += '<span></span>';
|
||||
}
|
||||
if (index < total - 1 && !step.disableNav) {
|
||||
if (index < total - 1) {
|
||||
navHtml += '<button class="tutorial-btn tutorial-btn-next" onclick="Tutorial.next()">Weiter</button>';
|
||||
} else if (index === total - 1) {
|
||||
navHtml += '<button class="tutorial-btn tutorial-btn-next" onclick="Tutorial.stop()">Fertig</button>';
|
||||
} else {
|
||||
navHtml += '<span></span>';
|
||||
navHtml += '<button class="tutorial-btn tutorial-btn-next" onclick="Tutorial.stop()">Fertig</button>';
|
||||
}
|
||||
}
|
||||
navHtml += '</div>';
|
||||
|
||||
@@ -1335,6 +1338,13 @@ const Tutorial = {
|
||||
// Positionierung
|
||||
this._positionBubble(step);
|
||||
|
||||
// Pulsieren bei automatischen Demos
|
||||
if (step.disableNav) {
|
||||
bubble.classList.add('tutorial-bubble-pulsing');
|
||||
} else {
|
||||
bubble.classList.remove('tutorial-bubble-pulsing');
|
||||
}
|
||||
|
||||
// Sichtbar machen
|
||||
bubble.classList.add('visible');
|
||||
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren