Почему alert не выводится, в чём проблема? Javascript
function Calculator() {
var Input1 = document.querySelector("#input1");
var Input2 = document.querySelector("#input2");
var Plus = document.querySelector("#plus");
var Minus = document.querySelector("#minus");
start = function() {
this.Plus.addEventListener('click', function() {
calculator.GetInner();
});
this.Minus.addEventListener('click', function() {
calculator.GetInner();
});
}
GetInner = function() {
alert("ss");
}
}
var calculator = new Calculator();
calculator.start();
<input type="number" name="numb1" id="input1">
<input type="number" name="numb2" id="input2">
<button id="plus">+</button>
<button id="minus">-</button>
Ответы (2 шт):
Автор решения: nazarpunk
→ Ссылка
class Calculator {
constructor() {
this.Input1 = document.querySelector("#input1");
this.Input2 = document.querySelector("#input2");
this.Plus = document.querySelector("#plus");
this.Minus = document.querySelector("#minus");
}
start() {
this.Plus.addEventListener('click', function() {
calculator.GetInner();
});
this.Minus.addEventListener('click', function() {
calculator.GetInner();
});
}
GetInner() {
alert("ss");
}
}
const calculator = new Calculator();
calculator.start();
<input type="number" name="numb1" id="input1">
<input type="number" name="numb2" id="input2">
<button id="plus">+</button>
<button id="minus">-</button>
Автор решения: nikolay73
→ Ссылка
Просто функции start и GetInner не добавлены в объект функции Calculator. Нужно добавить через this
function Calculator() {
var Input1 = document.querySelector("#input1");
var Input2 = document.querySelector("#input2");
var Plus = document.querySelector("#plus");
var Minus = document.querySelector("#minus");
this.start = function() {
Plus.addEventListener('click', function() {
calculator.GetInner();
});
Minus.addEventListener('click', function() {
calculator.GetInner();
});
}
this.GetInner = function() {
alert("ss");
}
}
var calculator = new Calculator();
calculator.start();
<input type="number" name="numb1" id="input1">
<input type="number" name="numb2" id="input2">
<button id="plus">+</button>
<button id="minus">-</button>