2개 이상의 button 누르면 각 ifrme 으로 페이지 열기
샘플 : http://happyjung.com/demo/javascript/button_iframe.php
버튼 2개에 각각 iframe 으로 url 을 전송해서 페이지를 여는 방법입니다.
QA ( https://sir.kr/qa/525654 )에 질문을 했고
@마르스컴퍼니 님과 @배르만 님의 도움으로 문제를 해결하고 그 내용을 공유합니다.
<script src="//code.jquery.com/jquery-latest.min.js"></script>
<button type="button" id="bntPostYourAdd1">다음</button>
<button type="button" id="bntPostYourAdd2">카카오 캘린더</button>
<br><br>
<iframe id="forPostyouradd1" data-src="https://daum.net"
src="about:blank" width="500" height="300" style="background-color:coral">
</iframe>
<script>
function postYourAdd1() {
var iframe = $("#forPostyouradd1");
iframe.attr("src", iframe.data("src"));
}
$("#bntPostYourAdd1").on("click", postYourAdd1);
</script>
<iframe id="forPostyouradd2" data-src="https://map.kakao.com"
src="about:blank" width="500" height="300" style="background-color:aqua">
</iframe>
<script>
function postYourAdd2() {
var iframe = $("#forPostyouradd2");
iframe.attr("src", iframe.data("src"));
}
$("#bntPostYourAdd2").on("click", postYourAdd2);
</script>
참고자료
https://inpa.tistory.com/entry/open-iframe-on-button-click-Code
댓글 3개
와우 수고하셨어요. 그런데 이리 하면 뒤로가기 버튼을 누르면 메인페이지 뒤로가기가 되는 것이 아니라 아이프레임 뒤로가기가 되어서 메인페이지는 아이프레임 페이지의 최초순간까지 뒤로가기가 안 되는 결점이...
그래서 div 의 innerHTML 을 바꾸는 것이 더 효과적일 수 있습니다.
아래 코드 한번 참고해 보세요.
[code]
<div id="buttonDiv">
<button type="button" data-src="https://daum.net">다음</button>
<button type="button" data-src="https://map.kakao.com">카카오 캘린더</button>
</div>
<div id="iframeDiv">
<div style="background-color:coral;width:500px;height:300px"></div>
<div style="background-color:aqua;width:500px;height:300px"></div>
</div>
<script>
buttons = document.querySelectorAll("#buttonDiv button");
for (i in buttons) {
buttons[i].dataset.num = i;
buttons[i].onclick = function() {
document.querySelectorAll("#iframeDiv div")[this.dataset.num].innerHTML = "<iframe src='" + this.dataset.src + "' style='width:100%;height:100%;border:none'></iframe>";
}
}
</script>
[/code]
@비타주리
여윽시 비타주리님입니다요.
감사 합니다.
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5096 | PHP | 3년 전 | 1499 | ||
| 5095 | JavaScript | 3년 전 | 2128 | ||
| 5094 | JavaScript | 3년 전 | 2046 | ||
| 5093 | 기타 | 3년 전 | 1415 | ||
| 5092 | JavaScript | 3년 전 | 1962 | ||
| 5091 | 기타 |
|
3년 전 | 1321 | |
| 5090 | 기타 |
|
3년 전 | 2257 | |
| 5089 | 웹서버 |
|
3년 전 | 3330 | |
| 5088 | JavaScript | 3년 전 | 2060 | ||
| 5087 | 기타 | 3년 전 | 1663 | ||
| 5086 | 웹서버 |
|
3년 전 | 1704 | |
| 5085 | node.js | 3년 전 | 1646 | ||
| 5084 | JavaScript |
DogFoot개발
|
3년 전 | 1454 | |
| 5083 | 웹서버 |
DogFoot개발
|
3년 전 | 2989 | |
| 5082 | JavaScript |
DogFoot개발
|
3년 전 | 4027 | |
| 5081 | JavaScript |
DogFoot개발
|
3년 전 | 2100 | |
| 5080 | JavaScript |
DogFoot개발
|
3년 전 | 2439 | |
| 5079 | 기타 |
DogFoot개발
|
3년 전 | 2494 | |
| 5078 | OS | 3년 전 | 1650 | ||
| 5077 | 웹서버 |
DogFoot개발
|
3년 전 | 1726 | |
| 5076 | 기타 |
DogFoot개발
|
3년 전 | 1536 | |
| 5075 | 기타 |
DogFoot개발
|
3년 전 | 1677 | |
| 5074 | 기타 | 3년 전 | 2286 | ||
| 5073 | 기타 | 3년 전 | 2558 | ||
| 5072 | 웹서버 |
|
4년 전 | 2235 | |
| 5071 | 웹서버 | 4년 전 | 3236 | ||
| 5070 | PHP | 4년 전 | 3198 | ||
| 5069 | 웹서버 | 4년 전 | 2433 | ||
| 5068 | 기타 |
|
4년 전 | 3016 | |
| 5067 | 기타 |
DogFoot개발
|
4년 전 | 2684 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기