我尝试制作脚本来计算3个不同div中的点击链接。你能否在我的代码中添加一些错误的注释。
JavaScript
window.onload = function () {
span = document.getElementById('span');
var sumcount = 0;
span.innerHTML = sumcount; // Записываем начальное значение
document.body.onclick = function (e) {
e = e || event;
var target = e.target || e.srcElement;
var countItem1 = 0,
countItem2 = 0,
countItem3 = 0;
if (target.className == 'item1') {
countItem1++;
sumcount++;
//здесь отсылаем новые данные на сервер, при удачном ответе обновляем содержимое span
span.innerHTML = countItem1;
}
if (target.className == 'item2') {
countItem2++;
sumcount++;
//здесь отсылаем новые данные на сервер, при удачном ответе обновляем содержимое span
span.innerHTML = countItem2;
}
if (target.className == 'item3') {
countItem3++;
sumcount++;
//здесь отсылаем новые данные на сервер, при удачном ответе обновляем содержимое span
span.innerHTML = countItem3;
}
}
}
我不明白这部分代码,请你帮我解释一下。 MERCI
document.body.onclick = function (e) {
e = e || event;
var target = e.target || e.srcElement;
答案 0 :(得分:0)
这些计数器应该被声明为在之外处理函数,就像“sumcount”一样。
事件处理程序开头的代码处理Internet Explorer,它不会将事件引用作为参数传递,而是调用事件目标属性“srcElement”而不是“target”。
答案 1 :(得分:0)
JavaScript Kit在解释它方面做得很好:
在IE和Firefox中,事件模型的实现方式不同。在IE中,有一个显式的window.event对象,它在事件发生时记录事件的任何细节(即:onclick),而在Firefox和其他符合W3c的浏览器中,一个不明确的Event对象会自动传递到与事件关联的函数中。包含有关事件的类似信息的处理程序。1