【发布时间】:2018-09-28 20:56:51
【问题描述】:
下面是我今天想到并创建的一个小项目的链接。我无法使用 IIFE 多次使按钮工作。我已经在没有 IIFE 的情况下解决了这个问题,但我的理解是最好将代码设为私有...任何建议将不胜感激。
https://codepen.io/kclute627/pen/dgPyxq
let randomColor = (function(){
// generate a random number
let randNum= () => Math.floor(Math.random() * 10);
// invoke random number 6 times to create hexcolor
let randColor = parseInt([randNum(), randNum(), randNum(), randNum(),
randNum(), randNum()].join(''))
const hexColor = (`#${randColor}`)
return hexColor;
})();
const makeColor = (function() {
let color1 = randomColor;
console.log(color1);
let setupEventListener = function(){
document.querySelector('.final-button').addEventListener('click',
function(){
document.querySelector('.main-box').style.backgroundColor = color1;
});
};
setupEventListener();
})();
【问题讨论】:
标签: javascript iife