【发布时间】:2013-10-11 11:24:13
【问题描述】:
那里有一些像这样的js代码:
function makeSizer(size) {
return function() {
document.body.style.fontSize = size + 'px';
};
}
var size12 = makeSizer(12);
var size14 = makeSizer(14);
var size16 = makeSizer(16);
document.getElementById('size-12').onclick = size12;
document.getElementById('size-14').onclick = size14;
document.getElementById('size-16').onclick = size16; document.getElementById('size-16').onclick = size16;
我有两个问题,第一个: 使用这个额外的变量有什么好处
var size12 = makeSizer(12);
var size14 = makeSizer(14);
var size16 = makeSizer(16);
什么时候可以写
document.getElementById('size-12').onclick = makeSizer(12)
第二个是: 为什么当我们这样写函数时:
function makeSizer(size) { document.body.style.fontSize = size + 'px'; }
一切都停止工作。我知道这是重复的,并且有一些关于关闭的帖子,但它们没有帮助
【问题讨论】:
-
我会使用
<a data-size="NN" class="sizer">并使用气泡在父元素上使用单个 onclick 处理程序。
标签: javascript