0

わかりました、この Web ページに取り組んで 1 週間経ちましたが、壁にぶつかりました。getelementbyid を機能させることを除いて、コードは適切に配置されています。サイドバーで画像を選択するときにjavascriptソースを変更することで、フレームdivの画像を変更しようとしています。私が疑問に思っていたのは、コードに問題があるのか​​、それとも関数がそのように機能しないのかということです。

<head>
<title>Rivas2</title>
<script id="newset" src="sidescroll.js" type="text/javascript"></script>
<script type= "text/javascript">

function changesrc() {
var sets = document.getElementById('newset');   
switch (value) {
 case '1': sets.src = 'sidescroll.js'; break;
 case '2': sets.src = 'sidescroll2.js'; break;
      }
    }
     </script>
   <style type="text/css">
        body{
background-color:#66FFFF;
}
   .banner{
position:absolute; 
top: 15px; 
left: 300px;}
.sideb1{
position:absolute;
top: 120px;
left: 25px;
height: 530px;
width: 150px;
overflow: auto;}
.frame{
position:absolute; 
top: 120px; 
left: 400px;}   
  .scroll{
position: absolute;
top: 525px;
left: 400px;
}

  </style>
  </head>

  <div class="sideb1" >
    <input type = 'image' src = 'image3.jpg' onclick = 'changesrc(1)' width= "120"           height= "100" alt= " " /><br/> House 1<br/>
    <input type = 'image' src = 'image3.jpg' onclick = 'changesrc(2)' width= "120" height= "100" alt= " " /><br/> House 2<br/>
    <a href="rivas2.html" ><img src="image3.jpg" width= "120" height= "100" alt="" /> </a><br/> House 3<br/>
    <a href="rivas3.html" ><img src="image3.jpg" width= "120" height= "100" alt="" /> </a><br/> House 4<br/>
    <a href="rivas2.html" ><img src="image3.jpg" width= "120" height= "100" alt="" /> </a><br/> House 5<br/>
</div>   
4

3 に答える 3

2

関数をビルドするときに引数を含める必要があります。これを試してください:

function changesrc(value) {
    var sets=document.getElementById('newset');   
    switch(value) {
        case(1):
            sets.src='sidescroll.js';
            break;
        case(2):
        default:
            sets.src='sidescroll2.js';
    }
}
于 2012-04-12T03:39:16.303 に答える
1

そうですね、値が定義されていないようです。これを試して

function changesrc(value) {
var sets = document.getElementById('newset');   
switch (value) {
 case '1': sets.src = 'sidescroll.js'; break;
 case '2': sets.src = 'sidescroll2.js'; break;
      }
    }

あなたは基本的に引数を含めるのを忘れていました

于 2012-04-12T03:40:14.947 に答える
0

ページにスクリプトを挿入するために、既存のスクリプト要素を再利用しないでください。新しいスクリプト要素を使用します。

function changesrc(value) { 
    var sets = document.createElement("script");    
    switch (value) { 
        case '1': sets.src = 'sidescroll.js'; break; 
        case '2': sets.src = 'sidescroll2.js'; break; 
    } 
    document.body.appendChild(sets);
} 
于 2012-04-12T03:51:27.163 に答える