2016-04-24 6 views
0

同じベースイメージ(複数の黒いピクセルがページ全体に分散されている、ポップアップ効果のようなもの)から複数のロールオーバーが必要なウェブページ上で作業しています。これを行う最も簡単な方法は、すべてのロールオーバーイメージとベースイメージ(pixel.png)を持つ配列を持つことです。イメージを表示することさえ問題がたくさんあり、バックグラウンドイメージが表示されていたので、ロールオーバーが機能しなくなりました。開発者/デバッグを使用してクロムで問題を解決しようとしましたが、サイコロはありません。エラーメッセージも表示されません。ここだ配列からのロールオーバー呼び出し画像

:私は、それは簡単ですが、あなたが投稿したことにも近接していないた...それは単純なもののような適切な機能を呼び出していないが、私はちょうどそれを見ることができないのです

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript"> 
      var revert = new Array('pixel.png'); 
      var inames = new Array('black1off.jpg', 'black2off.jpeg'); 

     //preload 
      if (document.images) { 
       var flipped = new Array(); 
        for(i=0; i< inames.length; i++) { 
         flipped[i] = new Image(); 
         flipped[i] = "media/"+inames[i]; 
         } 
        } 

      function over(num) { 
       if(document.images) { 
       revert[num] = document.images[inames[num]]; 
       document.images[inames[num]] = flipped[num]; 
       } 
      } 
      function out(num) { 
       if(document.images) { 
       document.images[inames[num]] = revert[num]; 
      }    
      } 

</script> 
</head> 
<body> 
<body bgcolor="#000000"> 

    <img src="media/pixel.png" name="pixel" height="50px" width="50px" style="position:absolute; top:30px; left:50px;" onMouseOver="over(0)" onMouseOut="out(0)"> 
    <img src="media/pixel.png" name="pixel" height="50px" width="50px" style="position:absolute; top:30px; left:200px;" onMouseOver="over(1)" onMouseOut="out(1)"> 
    </body> 
    </html> 

答えて

1

を推測しています作業例:https://jsfiddle.net/tqw84trm/1/

if (document.images) { 
    var flipped = new Array(); 
    for(i=0; i< inames.length; i++) { 
    flipped[i] = new Image(); 
    flipped[i].src = "media/"+inames[i]; 
    } 
} 

function out (num) { 
    if(document.images) { 
    var rev = revert.slice(); 
    revert[num] = document.images[num].src; 
    document.images[num].src = rev[num]; 
    }    
} 
+0

damman私はあなたの答えが正しいと知っていますが、私はそれが私が望むように動作させることはできません。プランBの作業を開始する必要があるかもしれない – theYnot

関連する問題