1

javascriptで背景色を変えようとしたのですがうまくいかず、いろいろ試してみましたが問題ありませんでした。

var x=1;

switch(x) {
    case 1: {
        document.getElementsByClassName("gallery").style.backgroundColor="blue";
    }
}

ここに html や css をコピーする必要はありません。このコードが問題ない場合は、他のコードを編集して追加します。

編集:あなたが要求したように、Htmlが追加されました。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>פרדס מרים ומרדכי</title>
<link href="../../CSS.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="Album1.js" type="text/javascript"></script>
</head>

<body>
    <div id="wrapper">
      <div id="header"></div>
      <div id="menu">
        <pre class="menu1"><a class="menu1" href="../../index.html">דף הבית</a>             <a class="menu1" href="../../HowToArrive.html">כיצד מגיעים</a>             <a class="menu1" href="../../HowItAllBegan.html">איך הכל התחיל</a>             <a class="menu1" href="../../Albums.html">אלבומי תמונות</a>             <a class="menu1" href="../../Contact.html">צור קשר</a></pre>
        </div>
      <div id="main">
        <div class="gallery_bg">    
            <div class="gallery"></div>
        </div>
      </div>
    </div>
</body>
</html>

追記:CSS追加。ギャラリークラスを参照する部分だけが必要だと思います。コード全体が非常に長いので、必要に応じて追加します。

        .gallery {
            width:550px;
            height:550px;
            -webkit-background-size: 550px 550px;
            -moz-background-size: 550px 550px;
            background-size: 550px 550px;
            border:#fff 3px solid;
            margin:0 auto;
        }
4

1 に答える 1

5

これを試して:

document.getElementsByClassName("gallery")を返しNodeList、それは のようなものなArrayので、次のことができます:

document.getElementsByClassName("gallery")[0].style.backgroundColor="blue";

またはループでそれを行います:

var galleries = document.getElementsByClassName("gallery");
var len =  galleries.length;

for(var i=0 ; i<len; i++){
   galleries[i].style.backgroundColor="blue";
}
于 2013-08-27T13:09:21.433 に答える