본문 바로가기

Local Oriented/HTML CSS JS

iframe 안에서 실행하고 화면 전환시, 크롬에서 문제

a.jsp 에 기술된 iframe 을 target 으로 b.jsp 를 실행하고 c.jsp 로 화면전환이 되는 프로세스일 때,
크롬에서는 약간의 문제가 있음..


a.jsp 에 아래와 같이 기술..
...
<a href="./b.jsp" target="ifrm">첫번째</a><br>
<a href="javascript:funcA()">두번째</a><br>
...
<iframe name="ifrm" style="display:none"></iframe>
<script>
  function funcA(){
    ifrm.location.href = './b.jsp';
  }
</script>
...


b.jsp 에 아래와 같이 기술..
...
<script>
  alert('메시지');
  top.location.href = './c.jsp';
</script>


상기와 같이 세팅된 경우..
IE 에서는 target 을 ifrm 으로 하고 href 를 b.jsp 로 하는 첫번째 링크나
funcA() 를 실행하는 두번째 링크나 동일하게 생각한 대로 작동하는데..

크롬의 경우..
target 으로 .jsp 를 호출하게 했더니,
b.jsp 에 기술된 alert('메시지') 가 아무것도 없는 빈 화면에서 알림으로 뜨고..
funcA() 를 호출하게 했더니,
IE 와 마찬가지로 a.jsp 화면이 그대로 있는 상태에서 알림 메시지가 뜬다.


크롬, 너 왜 그러니..

테스트 환경.
OS : Windows 10 1809(OS 빌드 17763.437) 64비트
크롬 : 74.0.3729.131(공식 빌드) (64비트)