javascript - 一次选择一张图像

标签 javascript css

这是代码:

function select(element){
   element.onclick = function(){
      element.classList.toggle('selected');
  }
}
Array.from(document.getElementsByClassName('my_class_img')).forEach(select);

这是CSS:

.selected{
border: 3px solid blue;
box-sizing: border-box;
}

图像具有相同的名为 my_class_img 的类,一次选择一个 img 怎么办(现在我可以选择多个 img)?谢谢大家!

编辑:使用@epascarello 给我的代码,我的其他函数 (myfun(i)) 不再起作用:

        var src1 = "";
        var img = new Array();
        img[0] = new Image();
        img[0].src = "../images/poggiatesta2.jpg";
        img[1] = new Image();
        img[1].src = "../images/poggiatesta1.JPG";
        img[2] = new Image();
        img[2].src = "../images/poggiatesta3.jpg";
            for (var i = 0; i < img.length; i++) {
            var imagetag = document.createElement("img");
            var onclick = document.createAttribute("onclick");
            onclick.value = "myfun(" + i + ")";

            var sorc = document.createAttribute("src");
            sorc.value = img[i].src;

            var id = document.createAttribute("id");
            id.value = "my_image" + i;

            var clas = document.createAttribute("class");
            clas.value = "my_image_clas";

            imagetag.setAttributeNode(clas);
            imagetag.setAttributeNode(onclick);
            imagetag.setAttributeNode(sorc);
            imagetag.setAttributeNode(id);
            document.body.appendChild(imagetag);
            }
            function myfun(i) {

                src1 = document.getElementById('my_image' + i).src;

            }

最佳答案

跟踪最后选择的或遍历所有元素并删除所选类。

var _last = null;
function select(element){
   element.onclick = function(){
      element.classList.toggle('selected');
      if(_last) _last.classList.remove("selected");
      _last = element.classList.contains("selected") ? element : null;
  }
}

或者使用单选按钮 :)

关于javascript - 一次选择一张图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35726276/

相关文章:

javascript - JQuery 窗口滚动

javascript - 如何仅使用 javascript/CSS 阻止 UI 直到页面加载等待图像

html - css 定位 z-index 负边距

Jquery css 更改问题

javascript - 如何在 javascript 中发送 SOAP 请求,就像在 SoapUI 中一样

javascript - 如何设置用户脚本以在一系列网站上运行?

基本遗传算法的PHP或JavaScript开源代码

javascript - AJAX:如何使用返回的数组?

html - 具有相同高度的文本字段旁边的提交按钮

jquery - 如何隐藏和切换一个 HTML 文件中的部分