basic structure created

This commit is contained in:
2025-12-31 20:42:21 +10:00
parent 63af3ed7b4
commit 4ab5967abe
6 changed files with 204 additions and 0 deletions

103
hw/hw7/hw7.js Normal file
View File

@@ -0,0 +1,103 @@
let elements = {
radioA: document.getElementById('radioButtonA'),
radioB: document.getElementById('radioButtonB'),
fieldsetA: document.getElementById('inputTypeFieldsetA'),
fieldsetB: document.getElementById('inputTypeFieldsetB'),
imageA: document.getElementById('schemeImageA'),
imageB: document.getElementById('schemeImageB'),
inputsForm: document.getElementById('inputsForm'),
equalSideLength: document.getElementById('equalSideLength'),
equalSideLengthErr: document.getElementById('equalSideLengthErr'),
baseAngle: document.getElementById('baseAngle'),
baseAngleErr: document.getElementById('baseAngleErr'),
baseSideLength: document.getElementById('baseSideLength'),
baseSideLengthErr: document.getElementById('baseSideLengthErr'),
baseAdjacentAngle: document.getElementById('baseAdjacentAngle'),
baseAdjacentAngleErr: document.getElementById('baseAdjacentAngleErr'),
outputsFieldset: document.getElementById('outputsFieldset'),
outputR: document.getElementById('outputValuesR'),
outputH: document.getElementById('outputValuesH'),
outputL: document.getElementById('outputValuesL'),
calculateButton: document.getElementById('calculateButton'),
clearButton: document.getElementById('clearButton'),
outputsTable: document.getElementById('outputsTable')
}
console.log("loaded js!")
let currentModeIsA = true;
let outputFields = {};
function updateCheckboxes(){
outputFields["radius"]=elements.outputR.checked;
outputFields["heights"]=elements.outputH.checked;
outputFields["lengths"]=elements.outputL.checked;
console.log("output fields:",outputFields)
}
function switchAppearance(selectA) {
if (selectA) {
elements.imageA.classList.remove("hidden")
elements.imageB.classList.add("hidden")
elements.fieldsetA.classList.remove("hidden")
elements.fieldsetB.classList.add("hidden")
}
else {
elements.imageA.classList.add("hidden")
elements.imageB.classList.remove("hidden")
elements.fieldsetA.classList.add("hidden")
elements.fieldsetB.classList.remove("hidden")
}
}
function clearInputs(clearA) {
if (clearA) {
elements.equalSideLength.value = null;
elements.baseAngle.value = null;
}
else {
elements.baseSideLength.value = null;
elements.baseAdjacentAngle.value = null;
}
elements.outputsTable.classList.add("hidden");
}
elements.outputsFieldset.addEventListener('change', function (event) {
if (event.target.type === 'checkbox') {
updateCheckboxes();
}
else if(event.target.type === 'checkbox'){
}
});
elements.inputsForm.addEventListener('change', function (event) {
if (event.target.type === 'radio') {
if (event.target.id[event.target.id.length - 1].toLowerCase() == "a") {
currentModeIsA = true;
switchAppearance(true);
console.log("Switching inputs to A");
}
else {
currentModeIsA = false
switchAppearance(false);
console.log("Switching inputs to B");
}
}
});
elements.clearButton.addEventListener('click', (event) => {
event.preventDefault();
clearInputs(currentModeIsA)
});
// чтобы не сконфузило
updateCheckboxes();
switchAppearance(elements.radioA.checked);