如何在不影响第一个div的情况下更改另一个div的背景

时间:2016-10-23 21:02:31

标签: javascript html css

我基本上必须制作这个数字从1到50的电路板,每当你点击一个数字时,它的背景会变成不同的颜色。我能够通过使std::initalizer_list可点击来完成第一个,但我不知道如何使用第二个应该具有值2的那个。这是我的代码

<div>
var Color = "#FF0";

function theFunction() {
  if (Color == '#FF0') {
    Color = '#F00';
  } else {
    Color = '#FF0';
  }

  document.getElementById('choose').style.backgroundColor = Color;

}
div#gameboard {
  background: #CCC;
  border: #999 2px solid;
  width: 1200px;
  height: 900px;
  margin: 70px;
  margin-top: 40px;
}

那么我该为第二个div做些什么呢?感谢

3 个答案:

答案 0 :(得分:4)

最简单的方法是从您的&#34;号码中删除ID&#34; divs,将所有样式代码移动到CSS,并确保将this传递给onclick事件,以便您知道单击了哪个数字div。然后,您可以添加一个clicked类,在应用时将背景变为红色,您的JavaScript只需切换clicked类的添加/删除。

&#13;
&#13;
function theFunction(e) {
  e.classList.toggle("clicked");
}
&#13;
#gameboard {
  background: #CCC;
  border: #999 2px solid;
  width: 1200px;
  height: 900px;
  margin: 70px;
  margin-top: 40px;
}
#gameboard div {
  width: 240px;
  height: 150px;
  margin-left: 30px;
  margin-top: 50px;
  background-color: #FF0;
  cursor: pointer;
  font-size: 130px;
  text-align: center;
}

#gameboard div.clicked {
  background-color: #F00;
}
&#13;
<div id="gameboard">
  <div onclick="theFunction(this);">
    1
  </div>
  <div onclick="theFunction(this);">
    2
  </div>
</div>
&#13;
&#13;
&#13;

这仅适用于当前的现代浏览器。如果您需要支持旧版本的IE(即&lt; IE10),那么您必须稍微更改JavaScript以测试是否存在clicked类,然后相应地添加或删除它。

您也可以考虑使用一个框架,比如jQuery,您可以轻松切换clicked类的添加/删除,并在框架内隐藏所有与浏览器兼容的代码。

答案 1 :(得分:0)

试试这个。

Spannable

答案 2 :(得分:0)

首先你必须改变

onclick="theFunction(this);"

到这个

function theFunction(element) {
    [...]
    element.style.backgroundColor=Color;
}

然后你的函数将接受一个参数

private bool IsValidActiveDirectoryUser(string activeDirectoryServerDomain, string username, string password)
{
    try
    {
        DirectoryEntry de = new DirectoryEntry("LDAP://" + activeDirectoryServerDomain, username + "@" + activeDirectoryServerDomain, password, AuthenticationTypes.Secure);
        DirectorySearcher ds = new DirectorySearcher(de);
        ds.FindOne();
        //user is validated so extract AD username and send to Tableau
    }
    catch //(Exception ex)
    {
        return false;
    }
}

该参数是点击的元素。