繁体   English   中英

如何用javascript做到这一点? 它就像一个切换但我似乎没有找到切换功能

[英]how to do this with javascript? it's like a toggle but I don't seem to find toggle function

我试图用javascript而不是jquery来做这件事。 我想点击图片,然后图片将有边框,但如果我再次点击它,那么边框将消失。 不知道如何做到这一点任何人都可以帮我一臂之力?

allImages = document.getElementsByTagName("img");

    for(i=0;i<allImages.length;i++)
{
    allImages[i].onclick=function()
    {
    this.style.borderColor="red";
    this.style.borderStyle="solid";
    }
}

使用id切换图像尝试此代码

var img = document.getElementById('image-id');

if( ! img.hasBorder ) {

     img.style.border="2px solid #f00";
     img.hasBorder = true;

} else {

     img.style.border = "";
     img.hasBorder = false;

}

更新的代码

allImages = document.getElementsByTagName("img");

for(i=0; i< allImages.length; i++ )
{
    allImages[i].onclick = function( e )
    {
           this.style.border = ( this.style.border == '')? "2px solid red":'';
    }
}

你可以做的是创建两个类,一个有边框,第二个没有边框。

现在当事件触发检查时,如果第一个类是applly然后删除它并应用第二个类。

var test = document.getElementById("test");
var testClass = test.className;

testClass = ( testClass == "first") ? "second" : "first";

尝试:

document.getElementById('id').style.border

尝试

//显示

document.getElementById('element').style.border = 'red';

//隐藏

document.getElementById('element').style.border = 'none';
var img = document.getElementById('image-id');
img.style.border = img.style.border ? "" : "2px solid red";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM