我有一个带有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; }
答案 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”。