2009-10-17 4 views
1

먼저, 숙제를 요청하는 사람이 없습니다. 요점은 자바 스크립트에 익숙해지기 위해 간단한 웹 페이지를 작성하는 것이 었습니다. 그것은 '카드'라는 폴더에서 임의의 카드를 생성하고 표시합니다. 나는 그 부분을 완성했다. 그러나 선생님에게 제출했을 때, 그는이 스크린 샷을 "어떤 아이디어"라는 제목으로 보냈습니다.자바 스크립트가 브라우저에서 생성되지 않고 화면에 코드를 인쇄합니다.

http://i38.tinypic.com/2wr3e2p.jpg

나는 여러 대의 컴퓨터에이 페이지를 테스트 한 모든 브라우저에서 작동합니다. 그가 페이지를 실행할 때 페이지에 코드를 인쇄하는 이유는 모르겠습니다. 이견있는 사람? (나는 그가 자바 스크립트를 사용할 것으로 가정하고 있는데, 특히 내 수업의 모든 사람들이이 프로그램을 제출하기 때문에 가능하다.)

편집 : 여기에 바로 질문

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Aaron's Gamble Page!</title> 

<style type="text/css"> 
* { padding: 0; margin: 0; } 

body 
{ 
font-family: Arial, Helvetica, sans-serif; 
font-size: 13px; 
background: #48454C; 
} 
#wrapper 
{ 
margin: 0 auto; 
width: 365px; 
} 
#header 
{ 
color: #333; 
width: 365px; 
padding: 10px; 
margin: 10px 0px 0px 0px; 
background: #A29EA2; 
} 
#centercolumn 
{ 
color: #333; 
padding: 10px; 
width: 365px; 
background: #DFE0DB; 
} 
#footer 
{ 
width: 365px; 
clear: both; 
color: #333; 
background: #A29EA2; 
padding: 10px; 
} 
</style> 

<script type="text/javascript" charset="utf-8"> 
// this page created by Aaron Albin 
// creation date: October 17, 2009 

var score = 0; 

function generateCards() 
{ 
    var i, randType, randSuite; 
    var type = new Array("2", "3","4","5","6","7","8","9","t","j","q","k","a"); 
    var suite = new Array("c","d","s", "h"); 
    var cards = new Array(5); 
    for (i = 0; i < cards.length; i++) 
    { 
     cards[i] = setRandomCard(type, suite, cards); 
     document.write('<img src = "'+cards[i]+'">'); 
    } 
} 

function setRandomCard(type, suite, cards) 
{ 
    var randType, randSuite; 
    var filePath = "file://C:/cards/"; 
    var fileExt = ".gif"; 

    do 
    { 
     randType = Math.floor(Math.random() * type.length); 
     randSuite = Math.floor(Math.random() * suite.length); 
    } 
    while(checkDuplicate(randType, randSuite, filePath, fileExt, type, suite, cards)); 

    addScore(type, randType); 
    return filePath + type[randType] + suite[randSuite] + fileExt; 
} 

function checkDuplicate(randType, randSuite, filePath, fileExt, type, suite, cards) 
{ 
    var j; 
    for (j = 0; j < cards.length; j++) 
    { 
     if (cards[j] == filePath + type[randType] + suite[randSuite] + fileExt) 
     { 
      return true; 
     } 
    } 
    return false; 
} 

function addScore(type, randType) 
{ 
    switch(type[randType]) 
    { 
     case "2": 
      score += 2; 
      break; 
     case "3": 
      score += 3; 
      break; 
     case "4": 
      score += 4; 
      break; 
     case "5": 
      score += 5; 
      break; 
     case "6": 
      score += 6; 
      break; 
     case "7": 
      score += 7; 
      break; 
     case "8": 
      score += 8; 
      break; 
     case "9": 
      score += 9; 
      break; 
     case "t": 
      score += 10; 
      break; 
     case "j": 
      score += 11; 
      break; 
     case "q": 
      score += 12; 
      break; 
     case "k": 
      score += 13; 
      break; 
     case "a": 
      score += 1; 
      break; 
     default: 
      score += 0; 
    } 
} 
</script> 

</head> 

<body> 
    <div id="wrapper"> 
     <div id="header"></div> 
      <div id="centercolumn"> 
       <h2>Gamble!</h2>  
       <br /> 
       <p>Welcome to my gambling page. You have drawn</p><br /> 
       <script type="text/javascript" charset="utf-8">generateCards();</script><br /><br /> 
       <p>The value of this hand is <script type="text/javascript" charset="utf-8">document.write(score);</script>.</p> 
       <br /> 
      </div> 
     <div id="footer"></div> 
    </div> 
</body> 
</html> 
+3

Blimey, 선생님 께 툴바 중 일부를 끄라고하세요! – Skilldrick

+0

선생님은 숙제를 확인하고있는 브라우저를 확인할 수 있습니까? – Rachel

+0

JS에 태그를 포함하여 일부 코드를 게시 할 수 있습니까? –

답변

3

당신은 당신의 코드가 권리 태그 내부에 나열되어 있는지 확신을 취소 코드 죄송이다하지만 난 모든 것을 포함?

<script type="text/javascript" charset="utf-8"> 
// your code goes here 
</script> 

은 당신이 XHTML로 선언 내가

+0

예, 페이지의 헤더 섹션 안에 코드 사이에 코드를 넣습니다. 그리고 나서 시체에서 나는 이것을 다음과 같이 사용했습니다 :

제 도박 페이지에 오신 것을 환영합니다.그려야




이 손의 가치는 .

Aaron

+0

나는 이전 포스트 인 – Aaron

+0

에서 사파리와 파이어 폭스를 사용해 보았을 때 – wezzy

2

immagine 수있는 유일한 이유이다. XHTML에서는 각 태그의 내용이 파싱됩니다. 따라서 <과 자바 스크립트의> 기호는 페이지를 깨뜨릴 수 있습니다. (그들은 수 있습니다, 내가 볼 수있는 유일한 잘못된 것입니다.) 귀하의 자바 스크립트를 CDATA 태그에 넣어. (http://www.w3schools.com/xmL/xml_cdata.asp을보십시오) 유감스럽게도 이것은 모든 브라우저에 의해 정확하게 파싱되지 않으므로, 작동하도록하려면 (자바 스크립트 -) 주석 처리해야합니다.

<script type="text/javascript"> 
/* <![CDATA[ */ 
    // code goes here 
/* ]]> */ 
</script> 

편집 : 시도가 http://validator.w3.org/이고 잘못된 마크 업과 문제점이있는 것을 확인할 수 있습니다. CDATA 태그를 추가하면 문제가 해결되거나 적어도 코드가 유효하게됩니다.

+0

을 사용해 보았을 때 "ut-f8"을 의미 했었는데, 그 때 – Aaron

+0

을 시도 할 것입니다. 페이지가 CSS 또는 자바 스크립트를 읽지 않는 것 같습니다. .. – Aaron

+0

좋아, 할 것이다. 입력에 감사드립니다. – Aaron

0

javascript가있는 IE에서 로컬 페이지를 디스크에서로드 할 때 "활성 컨텐츠가 비활성화되었습니다. 활성 컨텐츠를 활성화하려면 여기를 누르십시오."라는 경고 표시 줄이 나타납니다. (또는 그 선을 따라 무언가). 선생님에게 바를 보았는지 확인하십시오. JS가 어떻게 든 브라우저에서 또는 로컬 컴퓨터의 보안/바이러스 백신을 통해 장애가 발생한다는 것을 알지 못합니다. 그가 그것을 본 적이 있다면 클릭하여 활성 콘텐츠를 활성화했는지 확인하십시오.

오류 아이콘이 나타나는 창의 일부분을 교활하게 이동했기 때문에 스크린 샷에서보기가 어렵습니다. 화면의 상태 표시 줄에 있지만 Firefox가 설치되어있는 것을 볼 수 있으므로 그 페이지를 보도록 요청하십시오.

+0

그래, 그게 가능해. 나는 내가 끝까지 고칠 수있는 일이되기를 바랐다. 나는 정말로 그에게 "당신은 JS를 사용할 수 있는지 확인하라."라고 말하는 이메일을 보내고 싶지 않았다. xD – Aaron

+0

당신의 웹 사이트에 같은 페이지를 올리려고 할 수 있었다. 그에게 그걸 확인해달라고 부탁해? – robertc

+0

고마워, 나는 그랬어. 그가 뭐라고하는지 보자 ... – Aaron

관련 문제