style.opacity在ajax函数中不起作用

我已经在我的网站上创建了拖放功能。将图像放在此区域中时,将显示图像预览以及右上角的X标记,指示已删除图像。但是,当我将图像放在该区域时,X标记不可见。不透明度不会变为1。

这是我的代码。代码很长,但是我选择了相关部分:-

let deleteImage;

$(document).ready( function () {
    deleteImage = document.getElementById("deleteImage").addEventListener('click',removeImage);
})

function handleDrop(e) {
    let xhr = new XMLHttpRequest(),data = new FormData();

    xhr.onreadystatechange = function () {  
        if (this.readyState == 4 && this.status == 200) {
            console.log("Response " + this.responseText);
            imageUrlInput.value = this.responseText;
            previewDropArea.setattribute("src",this.responseText ); 

            //------------- This code isn't working -----------------------------------
            deleteImage.style.opacity = "1";
        }
    }
}

let removeImage = function (event) {
    previewDropArea.setattribute("src","#");
    imageUrlInput.value = "";
    this.style.opacity = "0";
}  

这是我与之关联的SASS:-

#deleteImage{
        height: 20px;
        width: 20px;
        align-self: flex-start;
        position: relative;
        left: 90px;
        opacity: 0;
    }
funnydoing 回答:style.opacity在ajax函数中不起作用

您已将deleteImage定义为addEventListener的返回值,因此它不是HTML元素。

您需要将deleteImage定义为getElementById

本文链接:https://www.f2er.com/3128607.html

大家都在问