하이브리드앱(웹뷰) 이용시 뒤로가기 문제 문의

하이브리드앱(웹뷰) 이용시 뒤로가기 문제 문의

QA

하이브리드앱(웹뷰) 이용시 뒤로가기 문제 문의

본문

게시판에 이용할 경우 대개 아래와 같은 흐름으로 진행됩니다.
1. A.php 파일에 있는 게시판 링크를 클릭해 게시판 목록으로 이동한다.
2. 특정 글을 조회한다. (한번이든, 여러번이든)
3. 글쓰기 버튼을 클릭하여 글쓰기 페이지로 이동한다.
4. 글을 쓴다.
5. 글쓰기가 완료되면 글 조회(또는 목록)페이지에 이동된다.


PC의 경우 사람들이 별 신경을 안쓰지만 모바일인 경우 아이폰이 물리 뒤로가기 버튼이 없는 관계로 페이지 상단 또는 하단에 뒤로가기 버튼을 HTML로 만들게 되는데 
단순히 뒤로가기 버튼에 history.back() 을 호출하게 만들면 바로 이전페이지로만 이동하여 아래의 경우 오류라고 생각하는 사람이 많습니다.

 

1. A.php 파일에 있는 게시판 링크를 클릭해 게시판 목록으로 이동한다.
2. 글을 조회한다
3. 리스트로 이동한다
4. 다른 글을 조회한다
5. 글을 쓴다
6. 글쓰기가 완료되면 글 조회(또는 목록)페이지에 이동된다.

 

위 흐름에서 계속 뒤로가기 버튼을 클릭하게 되면 3~4번 과정 때문에 3번에서 뒤로가기를 하게 되면 A.php페이지로 이동하지 않고 2번 페이지로 이동하게 되는데 3번에서 뒤로가기 할 때 A.php 파일로 이동하도록 처리하는 방법이 있을까요?
3~4번 과정은 여러번 발생할 수도 있어서 단순히 history.go(n)만으로는 해결이 안될 것 같습니다.

 

지금은 페이지 접속할 때마다 URL을 확인하여 if문으로  history.back()을 할지, history.go(n)를 할지 URL이동을 시킬지 구분시키고 있습니다.

 


<!-- 뒤로가기 -->
<? 
if($bo_table == 'one' || ($bo_table == 'notice' && $wr_id == '')){
    $bstep = 1;
    if($bo_table == 'one' && $pn != 'write' && $is_write)
        $bstep = 3;
?>
<div id="header">
    <? if(!$is_ios_app || $pn != 'register_member'){?><span class="top_back" onclick="history.go(-<?=$bstep?>); return false;"><img src="<?php echo G5_THEME_URL ?>/mobile/shop/images/top_back.png" alt="" width="40"/></span><? } ?>
</div>
<? } ?>
<!-- 뒤로가기(페이지 이동) -->
<? 
$back_url = '';
if($bo_table == 'coop')
    $back_url = G5_THEME_URL.'/mobile/shop/09/option.php';
else if($pn == 'search_result')
    $back_url = G5_THEME_URL.'/mobile/shop/01/search_list.php';
if($pn == 'search_result' || $bo_table == 'coop'){
?>
<div id="header">
    <span class="top_back" onclick="location.href='<?=$back_url?>#'; return false;"><img src="<?php echo G5_THEME_URL ?>/mobile/shop/images/top_back.png" alt="" width="40"/></span>
</div>
<? } ?>

이 질문에 댓글 쓰기 :

답변 2

현재 페이지가 아닌 다른페이지 유입이라면

뒤로가기 또는 백스페이스 등 액션이 확인되면

바로 리스트로 이동하도록 스크립트를 짜시면 될것 같은데요??

 

실제로 모달창닫기 부분에 해당 방법을 적용하여 사용중입니다.

뒤로가기를 만드시는 이유가 뭘까요?

그냥 보기 페이지에서는 A페이지 또는 목록으로 바로 이동하는 버튼을 넣으시면 될것 같은데요..

답변 감사합니다.
이게 문제가 되는 것이 A페이지에서만 리스트를 통해 글을 본다면 답변 주신대로 처리하면 되나, A이외 다른 페이지의 링크를 통해 바로 글을 볼 수 있는 경우도 있고, 다른 페이지의 링크를 통해 리스트로 들어올 수도 있기 때문에 뒤로가기 버튼을 누르면 이동하는 페이지가 조건에 따라 변경되야 합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 15,420
QA 내용 검색
filter #php ×

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT