2013-09-01 2 views
0

그래서 저는 자바 스크립트를 사용하여 내 자신의 슬라이더를 만듭니다. 총 12 개의 이미지가 있습니다. 6 50x50 및 6 200x200입니다. 작은 이미지는 1,2,3,4,5,6에서 다시 1로 전환됩니다. 이미지를 클릭하면 더 큰 이미지가 새 창에서 열릴 것입니다. 문제는 여섯 번째 작은 이미지를 클릭하면 팝업 창이 열리고 이미지가 손상됩니다. 나는 그것을 디버깅하고 그 문제가 팝업을 열 때 팝이 0으로 열리고 있다고 경고하는 이미지를 열어 볼 수 있습니다.이미지 추적 자바 스크립트

어떤 도움을 주시면 감사하겠습니다. 그것은 내가 볼 수없는 단순한 무언가이다.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 

<html> 
<head> 
<script> 

number=1 
function move(){ 
brillo.src="images/tudelude_0"+number+".jpg" 
number++ 

if (number>6) number=1 
setTimeout("move()",1000) 

} 


function Open(){ 
t=number-1 

var newWindow = window.open("", "pictureViewer", "fullscreen=no"); 
newWindow.document.writeln("<img src='images/tude_0"+t+".jpg'/>"); 
alert(t) 
newWindow.document.close(); 
} 

</script> 
</head> 

<body onload="move()"> 

<div class="box"> 
<img src="images/tudelude_01.jpg" name="brillo" 
onclick="Open(); return true;"> 
</div> 
</body> 
</html> 
+1

암시적인 세미콜론을 피하십시오. 항상 문장의 끝에 세미콜론을 넣으십시오. 이렇게하면 특정 미묘한 버그를 피할 수 있습니다. – nneonneo

+0

또한 이미지 번호가 0-5 또는 1-6입니까? – nneonneo

+0

그들은 1에서 6까지입니다. – Sampson

답변

0

number은 실제로 어떤 이미지가 실제로 표시되는지를 반영하지 않습니다.

대신이 작업을 수행해야합니다

number = 1; 
function move() { 
    number++; 
    if(number > 6) 
     number = 1; 
    brillo.src="images/tudelude_0"+number+".jpg"; 
} 

function Open(){ 
    var newWindow = window.open("", "pictureViewer", "fullscreen=no"); 
    newWindow.document.writeln("<img src='images/tude_0"+number+".jpg'/>"); 
    newWindow.document.close(); 
} 

하고 onload, setInterval(move, 1000)을 사용합니다.

+0

죄송합니다, 어쨌든 어리석은 일을 내가 바보 짓을 바보. 도와 주셔서 감사합니다. 매우 감사. – Sampson