Javascript 一次选择一个图像
代码如下:Javascript 一次选择一个图像,javascript,css,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: bor
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\u 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 src1=“”;
var img=新数组();
img[0]=新图像();
img[0].src=“../images/poggiatesta2.jpg”;
img[1]=新图像();
img[1].src=“../images/poggiatesta1.JPG”;
img[2]=新图像();
img[2].src=“../images/poggiatesta3.jpg”;
对于(var i=0;i
跟踪最后一个选定的类,或循环所有元素并删除选定的类
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;
}
}
或者使用单选按钮:)跟踪上一个选定的或循环所有元素并删除选定的类
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;
}
}
或者使用单选按钮:)我想这样做并跳过使用脚本
输入{
显示:无
}
输入:已选中~img{
边框:3件纯蓝;
框大小:边框框;
}
我希望这样做,并跳过使用脚本
输入{
显示:无
}
输入:已选中~img{
边框:3件纯蓝;
框大小:边框框;
}
非常感谢,它很有效!有一个问题,你给我的代码,我的其他函数不再工作:函数myfun(i){src1=document.getElementById('my_image'+i).src;}
。你知道为什么吗?还有什么函数?我在我的评论中写的,它是一个函数,存储在一个变量(src1
)中选定的图像src。仍然不知道这与上面的代码有什么关系。或者你可以从一开始就在问题中发布代码。非常感谢,它工作正常!有一个问题,你给我的代码,我的其他函数不再工作:函数myfun(i){src1=document.getElementById('my_image'+i).src;}
。你知道为什么吗?还有什么函数?我在我的评论中写的,它是一个函数,存储在变量(src1
)中所选图像src。仍然不知道这与上面的代码有什么关系。或者你可以从一开始就在问题中发布代码。有什么帮助吗?我还是Stuck有什么帮助吗?我还是困在那里