for循环无法向内部传参 js

function class_mask_Click() {
var Mask = document.getElementsByClassName("img_bg");
var id_Bg = document.getElementsByClassName("Bg");
for (var i = 0;i < Mask.length-1;i++) {
Mask[i].click(function (i) {
console.log(id_Bg[i]);
console.log(id_Bg.length);
})
}
}
class_mask_Click();


    function class_mask_Click() {
        var Mask = document.getElementsByClassName("img_bg");
        var id_Bg = document.getElementsByClassName("Bg");
        for (var i = 0;i < Mask.length-1;i++) {
            Mask[i].onclick = (function (i) {
                return function () {
                    console.log(id_Bg[i]);
                    console.log(id_Bg.length);
                }
            })(i);
        }
    }
    class_mask_Click();

你把mask那段代码放到这个里面(function(i){mask那段代码})(i),手机打的,见谅

放在ready函数里

其实,我最后选择用this来搞了