2012-06-11 4 views
1

HTML 코드를 테스트하는 데 사용하는 내 PC에 오프라인 "htm"파일이 있습니다. HTML 편집기와 같습니다. HTML 코드를 컴파일합니다. 그러나 나는 그것에 문제가있다. 모든 종류의 CSS와 JavaScript를 지원하며 jQuery와 같은 JavaScript 기반 라이브러리도 지원하지만 "onload, $ (document) .ready()"와 같은 이벤트는 지원하지 않습니다. 왜 그런지 모르겠습니다. 나는 그것에 대해 많은 것을 시도했지만 아무 것도 할 수 없었습니다."PURE JAVASCRIPT BASED"오프라인 파일이 "onload"이벤트를 지원하지 않는 이유는 무엇입니까?

그래서 내 편집기 -

<html> 
<script type="text/javascript"> 
    function ShowResult() 
    { 
    my_window = window.open("about:blank", "mywindow1"); 
    my_window.document.write(x); 
    if(my_window.document.title=="") 
    { 
     my_window.document.title="No title was specified" 
    } 
    } 
</script> 
<body> 
    <textarea style="height:400px;width:750px;overflow:auto;" onblur="x=this.value"> 
    </textarea><br /> 
    <button onclick="ShowResult()">see result!</button> 
</body> 
</html> 

의 소스 코드를 볼 수 내가 한 일을 실수 알려주세요? 왜 파일이 ​​"onload"이벤트를 지원하지 않습니까?

+0

... 왜 그냥 실제 HTML 파일에 HTML 코드를 작성하고 브라우저에서로드? –

+0

WYSIWYG 편집기와 같은 것입니까? – NewUser

+0

_ "그러나 onload, $ (document) .ready()와 같은 이벤트는 지원하지 않습니다. 왜"_ - ** 당신은 무엇을 시도 했습니까? " – Eric

답변

2

이미로드 된 페이지의 컨텍스트 내에서 코드를 실행하고 있습니다.

jsfiddle와 같은 시스템은 동적으로 페이지를 생성하여 iframe에로드함으로써이를 처리합니다.

이렇게하려면 일종의 서버 측 스크립팅이 필요합니다. 로컬 웹 서버 (예 : Wampserver)를 설치하는 것이 좋습니다.

+1

글쎄, 네 대답이 도움이 될 것 같아. 제발 좀 더 자세히 설명해주세요. 이 Wampserver는 무엇이며 내 PC에는 asp.net이 없으므로 Wampserver가 실행됩니다. 내 OS는 Windows XP Professional 에디션입니다. 이 주제에 대해 더 자세히 알려주십시오. 그리고 즉시 대답 해 주셔서 감사합니다. – Ash

+0

WAMPserver는 기본적으로 Windows에 설치할 수있는 완벽한 웹 서버입니다. 그것은 Apache (웹 서버), MySQL (데이터베이스) 및 PHP (서버 측 언어)를 포함합니다. 많은 대안이 있으며, 선호하는 웹 서버, 데이터베이스 및 언어와 일치하는 대안이있을 수 있습니다. – Martijn

0

당신은 X 초기화해야합니다

<html> 
<script type="text/javascript"> 
    x = ""; 
    function ShowResult() 
    { 
    my_window = window.open("about:blank", "mywindow1"); 
    my_window.document.write(x); 
    if(my_window.document.title=="") 
    { 
     my_window.document.title="No title was specified" 
    } 
    } 
</script> 
<body> 
    <textarea style="height:400px;width:750px;overflow:auto;" onblur="x=this.value"> 
    </textarea><br /> 
    <button onclick="ShowResult()">see result!</button> 
</body> 
</html> 
+1

인라인 자바 스크립트를 사용하여 이미 "x"를 초기화했기 때문에이 작업을 수행 할 필요가 없습니다.이 텍스트 참조 : width : 750px; onblur = "x = this.value">'인라인 자바 스크립트 코드에서 선언 된 변수가 전역 변수로 선언 된 것을 모르십니까? 그리고 만약 당신이 올바른 것을 말하고 있다면 그것은 "onload"이벤트와 아무런 관련이 없다고 가정하십시오. 권리? – Ash

+0

@InneedofHelp : blur 이벤트가 아직 실행되지 않은 경우 어떻게해야합니까? 그런 다음'x'가 정의되지 않았기 때문에 오류가 발생합니다. 이 추가로, 코드는 나를 위해 작동합니다. – Eric

+1

1 분, 편집자가 이미 작동하고 있다는 제 질문을 읽어보십시오. 단 하나의 문제, 즉 "onload"이벤트가 작동하지 않습니다. 그리고 블러 이벤트가 무엇을 의미합니까 아직 해고되지 않았습니다 (다음 주석 읽기) – Ash