如何在另一個事件偵聽器中訪問在一個事件監聽器中創建的變量?

我正在制作一個基本顏色生成器,根據按下的按鈕生成隨機十六進制或RGB顏色。我已經制作了一個構造函數,它在每次按下按鈕時都會運行,通過一系列方法生成新的顏色,用于生成明暗變化、在顏色空間之間轉換等。

我的UI有三個按鈕:十六進制、轉換和RGB。我目前在事件偵聽器上編寫了代碼,用于在十六進制/RGB之間進行轉換,但如果我可以使用當我單擊十六進制/RGB時生成的相同顏色對象的方法,則會更加簡潔。

目前,當我單擊十六進制或rgb按鈕時,我有以下代碼:

hex.addEventListener (‘click’) function () {
     const newColor = new Color();
     setStylesHex(newColor);
}

在理想情況下,我可以在translate按鈕(使用上面生成的newColor變量)上執行類似的操作,但我遇到了范圍問題:

trans.addEventListener (‘click’, function() {
     if (head.innerText[0] === 1) {
     setStylesRGB(newColor);
     } else {
          setStylesHex(newColor);
     }
})

除了在事件偵聽器上為translate按鈕重新生成翻譯程序代碼之外,我還沒有真正嘗試過任何其他操作。我真的很困惑如何獲得我想要的功能,如果能得到任何幫助,我將不勝感激。

? 最佳回答:

newColor的聲明放在兩個函數都可以訪問的范圍中:

let newColor;

hex.addEventListener (‘click’) function () {
     newColor = new Color();
     setStylesHex(newColor);
}

trans.addEventListener (‘click’, function() {
     if (head.innerText[0] === 1) {
     setStylesRGB(newColor);
     } else {
          setStylesHex(newColor);
     }
})
主站蜘蛛池模板: 一区二区免费电影| 欧洲精品免费一区二区三区| 加勒比精品久久一区二区三区| 久久久国产精品无码一区二区三区| 欧美日韩国产免费一区二区三区| 久久精品成人一区二区三区| 久久国产精品免费一区二区三区| 国产福利一区二区在线视频 | 亚洲一区动漫卡通在线播放| 无码人妻精品一区二区三区99仓本| 色老头在线一区二区三区 | 亚洲一区二区三区香蕉| 精品视频一区二区三区四区| 精品国产AⅤ一区二区三区4区| 国产精品高清一区二区人妖| 日本高清成本人视频一区| 亚洲一区中文字幕在线观看| 三上悠亚亚洲一区高清| 日本一区二区三区在线看| 亚洲av无码成人影院一区| 亚洲电影国产一区| 亚洲一区二区三区四区在线观看| 亚洲AV无码一区二三区| 女人和拘做受全程看视频日本综合a一区二区视频 | 精品日本一区二区三区在线观看 | 国产福利91精品一区二区三区| 免费一区二区三区| 99精品国产高清一区二区| 国产一区二区免费视频| 亚洲狠狠久久综合一区77777 | 国产丝袜美女一区二区三区| 国产日韩一区二区三区在线观看| 精品国产精品久久一区免费式| 无码国产精品一区二区免费式直播 | 精品一区二区三区四区| 午夜福利av无码一区二区| 久久无码AV一区二区三区| 日本一道高清一区二区三区| 精彩视频一区二区| 亚洲第一区视频在线观看 | 香蕉视频一区二区三区|