문제

단일 프레임 세트 HTML 페이지에는 세 개의 프레임이 있습니다.페이지의 뷰 소스가 아래에서 보았을 때

<HTML>
<HEAD>
 <TITLE>A simple frameset document</TITLE>
 </HEAD>
<FRAMESET cols="20%, 80%">
<FRAMESET rows="100, 200">
  <FRAME src="contents_of_frame1.html">
   <FRAME src="contents_of_frame2.html">
</FRAMESET>
<FRAME src="contents_of_frame3.html">

  </FRAMESET>
</HTML>
.

그러나 나의 기대는 JavaScript를 사용하여 단일 페이지에 전체 프레임 소스를 표시하고 싶습니다. 감사합니다

도움이 되었습니까?

해결책

이 북마크함처럼?

참고 :

  1. xmp를 사용하면 더 이상 사용되지 않지만 대부분의 브라우저에서 작동해야합니다
  2. 새 창을 열려고하면
  3. 를 허용합니다.
  4. 프레임 컨텐츠가 <HTML> 태그를 가지고 있다고 가정합니다.
  5. 스크립트를 북마크 URL에 붙여넣고 페이지에서 책갈피를 실행하십시오.
  6. windows에서 크롬에서 테스트 됨
  7. javascript:(function() { 
      var htmlContent=[]; 
      for (var i=0;i<window.frames.length;i++) {
        var fr = window.frames[i], doc=fr.contentDocument || fr.document;
        htmlContent.push(doc.getElementsByTagName("HTML")[0].innerHTML);
      }
      var w=window.open('');
      for (var i=0;i<htmlContent.length;i++) {
        w.document.write('Frame '+i+':<hr/><xm'+'p>'+htmlContent[i]+'</xmp><hr/>')
      }
      w.document.close();
    })()
    
    .

    이 HTML로 테스트

    <html>
    <head>
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <title>Demo by mplungjan</title>
    <script type='text/javascript'>
    var contents_of_frame1 = '<html><head><title>Frame1</title><script>alert("frame 1")<\/script></head><body>Frame1</body></html>';
    var contents_of_frame2 = '<html><head><title>Frame2</title><script>alert("frame 2")<\/script></head><body>Frame 2</body></html>';
    var contents_of_frame3 = '<html><head><title>Frame3</title><script>alert("frame 3")<\/script></head><body>Frame 3</body></html>';
    </script>
    </head>
      <FRAMESET cols="20%, 80%">
        <FRAMESET rows="100, 200">
          <FRAME src="javascript:top.contents_of_frame1" />
          <FRAME src="javascript:top.contents_of_frame2" />
        </FRAMESET>
      <FRAME src="javascript:top.contents_of_frame3" />
    </FRAMESET>
    </html>
    
    .

    이 출력을 얻습니다

    프레임 0 :


    <head><title>Frame1</title><script>alert("frame 1")</script></head><body>Frame1</body>

    프레임 1 :


    <head><title>Frame2</title><script>alert("frame 2")</script></head><body>Frame 2</body>

    프레임 2 :


    <head><title>Frame3</title><script>alert("frame 3")</script></head><body>Frame 3</body>

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top