如何在onBeforeDrag期间更改图像的边框颜色?

时间:2018-10-15 22:49:20

标签: javascript html css3 styles webix

我有一个带有source属性的html img元素。拖放时如何更改图像边框的颜色?

<image src='" + "#src#" + "' height='185' width='150' />

以下是我的 onBeforeDrag 事件。

$$("imageList").attachEvent("onBeforeDrag", function (context, ev) {
    if (ev.target.currentSrc != null) {
        //var imagepath = ev.target.currentSrc;
        document.getElementsByTagName('img').css = "myborder";
        console.log(document.getElementsByTagName('img'));
    }
});

css:

 .myborder {
    background:#D652D9;
    padding:12px;
    border:1px solid #999; }

1 个答案:

答案 0 :(得分:1)

document.getElementsByTagName()返回一个包含元素集合的Object。因此.css不是该对象的属性,也不是该集合内每个对象的属性。在IT看来,您想为该元素分配一个CSS类名称。您可以使用.classList.add()来做到这一点。

要修复该部分,建议您使用document.querySelectorAll(),因为它会返回另一种类型的集合,称为NodeList。此更改很重要的原因是因为它具有forEach()方法。因此,您可以这样做:

document.querySelectorAll('img').forEach(i=>i.classList.add("myborder"));

这段代码将为页面上的每个图像分配css类名称“ myborder”。