';
if (W.Chem7Anim) anim = W.Chem7Anim.colorBlock($(mountId+'-drop'), c.neutral[0], c.alk[0], ind + ' в щёлочи → ' + c.alk[1], 900);
$(mountId+'-sel').addEventListener('change', function(e){ ind=e.target.value; render(); });
}
render();
}
/* §24 — конструктор оснований Me(OH)n + индикаторы */
var BM = [ ['Na',1], ['K',1], ['Ca',2], ['Mg',2], ['Cu',2], ['Al',3], ['Fe',3] ];
var SOLUBLE = { Na:1, K:1, Ca:1 };
function mount_p24() {
var b = $('p24-bld');
if (b && !b._built) { b._built = 1;
function rom(n){ return ['','I','II','III'][n]; }
b.innerHTML = '
+ гидроксогруппа OH (I)
';
function upd(){
var e=BM[+$('p24-m').value], n=e[1];
var raw = e[0] + (n>1 ? '(OH)'+n : 'OH');
var sol = SOLUBLE[e[0]] ? 'щёлочь (растворимое основание)' : 'нерастворимое основание';
var out=$('p24-out'); out.className='out ok';
out.innerHTML='Валентность '+e[0]+' = '+rom(n)+', OH = I → '+n+' группы OH Формула основания: '+fml(raw)+' Это '+sol+'.';
}
$('p24-m').addEventListener('change',upd); upd();
}
alkIndicator('p24-ind');
}
function mount_lo5() { alkIndicator('lo5-ind'); }
/* §25 / ПР4 — нейтрализация (фенолфталеин малиновый → бесцветный) */
function mount_neutral(mountId) {
var m = $(mountId); if (!m || m._built) return; m._built = 1;
var done = false, anim = null;
function render(){
if (anim) { anim.stop(); anim = null; }
m.innerHTML = ''
+ '
'+(done
? 'Раствор стал бесцветным — кислота нейтрализовала щёлочь. Реакция завершена.'
: 'В щёлочи с фенолфталеином раствор малиновый. Добавляй кислоту по каплям.')+'
'
+ ''
+ (done ? '
'+ceq('HCl + NaOH = NaCl + H2O')+'
Кислота + основание → соль + вода. Это реакция нейтрализации.
' : '');
if (W.Chem7Anim) anim = done
? W.Chem7Anim.colorBlock($(mountId+'-cup'), '#db2777', '#f8fafc', 'малиновый → бесцветный', 1600)
: W.Chem7Anim.colorBlock($(mountId+'-cup'), '#db2777', '#db2777', 'щёлочь + фенолфталеин', 1);
$(mountId+'-go').addEventListener('click', function(){ done=!done; render(); });
}
render();
}
function mount_p25() { mount_neutral('p25-neu'); }
function mount_pr4() { mount_neutral('pr4-neu'); }
/* §26 — охрана воды и воздуха: источники загрязнения и способы охраны */
var ECO = {
'Источники загрязнения': [
['Промышленные выбросы','Газы и пыль из труб заводов загрязняют воздух.'],
['Сточные воды','Неочищенные стоки отравляют реки и озёра.'],
['Нефть','Разливы нефти губят водные организмы.'],
['Кислотные дожди','Оксиды серы и азота в воздухе образуют кислоты, выпадающие с дождём.']
],
'Способы охраны и очистки': [
['Очистные сооружения','Сточные воды очищают перед сбросом.'],
['Фильтрование','На водопроводных станциях удаляют твёрдые частицы.'],
['Хлорирование и озонирование','Обеззараживают питьевую воду.'],
['Бережное отношение','Экономить воду и не загрязнять водоёмы.']
]
};
function mount_p26() {
var m = $('p26-eco'); if (!m || m._built) return; m._built = 1;
var cols = Object.keys(ECO).map(function(title){
var items = ECO[title].map(function(it,i){ return ''; }).join('');
return '