我想在没有重复代码的情况下触发事件。所以我决定创建一个构造函数(类),然后创建一个带有连接到事件处理程序的变量的新对象。我只是测试它,但我无法得到if
语句触发alert()
使用this.link
它的工作方式如下:if(el)但不是这样:if(el === this 。链接)
var faqOne = document.getElementById("faqOne");
var hiddenOne = document.querySelector("p.faqOneHidden");
faqOne.addEventListener("click", function (e) {
showFaqOne.showClickedFaq(e);
}, false);
function DisplayQFaqs(link, faq) {
this.link = link;
this.faq = faq;
}
DisplayQFaqs.prototype.showClickedFaq = function (e) {
var el = e.target;
if (el === this.link) {
alert('hi');
}
};
var showFaqOne = new DisplayQFaqs(faqOne, hiddenOne);