fix(geom8): кнопка Проверить — feedback теперь показывается
Баг: у элементов .feedback стоит inline style='display:none' и CSS-класс .feedback с display:none. Класс .feedback.ok должен переключать на display:block, но inline-стиль имеет ВЫСШУЮ специфичность и перекрывает классовый display:block. В итоге onclick-обработчики работали корректно (вызывали feedback()), но сообщение оставалось скрытым из-за inline display:none. Симптом: 'нажимаешь Проверить — ничего не происходит' в боссах, DnD, тренажёрах, квизах — везде где есть .feedback элемент. Фикс: функция feedback() теперь явно сбрасывает elm.style.display='block' после установки класса. Добавлен null-check на elm. Затронуто 3 файла (ch1, ch2, ch3). Все feedback-элементы во всех параграфах теперь показываются после клика по Проверить. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -592,7 +592,7 @@ function renderMath(root){
|
||||
try{ renderMathInElement(root, {delimiters:[{left:'$$',right:'$$',display:true},{left:'$',right:'$',display:false},{left:'\\[',right:'\\]',display:true},{left:'\\(',right:'\\)',display:false}],throwOnError:false}); }catch(e){}
|
||||
}
|
||||
}
|
||||
function feedback(elm, ok, text){ elm.className = 'feedback ' + (ok ? 'ok' : 'fail'); elm.innerHTML = text || (ok ? '✓ Верно!' : '✗ Неверно'); }
|
||||
function feedback(elm, ok, text){ if(!elm)return; elm.className = 'feedback ' + (ok ? 'ok' : 'fail'); elm.innerHTML = text || (ok ? '✓ Верно!' : '✗ Неверно'); elm.style.display='block'; }
|
||||
function fmt(n){ if(!isFinite(n)) return '?'; if(Number.isInteger(n)) return String(n); return Math.abs(n - Math.round(n)) < 1e-9 ? String(Math.round(n)) : (+n.toFixed(4)).toString(); }
|
||||
|
||||
const ICONS = {
|
||||
|
||||
Reference in New Issue
Block a user