단일 viewsource에서 소스보기 여러 html 프레임을 설정하는 방법
-
21-12-2019 - |
문제
단일 프레임 세트 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를 사용하여 단일 페이지에 전체 프레임 소스를 표시하고 싶습니다. 감사합니다
해결책
이 북마크함처럼?
참고 :
- xmp를 사용하면 더 이상 사용되지 않지만 대부분의 브라우저에서 작동해야합니다
- 새 창을 열려고하면 를 허용합니다.
- 프레임 컨텐츠가
<HTML>
태그를 가지고 있다고 가정합니다. - 스크립트를 북마크 URL에 붙여넣고 페이지에서 책갈피를 실행하십시오.
- windows에서 크롬에서 테스트 됨
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>
제휴하지 않습니다 StackOverflow