JavaScript

모바일 기기로 접속할 때 모바일 페이지로 이동하는 자바스크립트 함수

bang2001 2014. 7. 17. 11:48

/*

이 함수는 현재 접속한 기기(Device)가 모바일인 경우

모바일 페이지로 이동할 수 있도록 구현된 함수이다.


mobile_url : 모바일 페이지 URL

go_flag : 접속한 기기가 모바일이 맞는 경우 모바일 페이지로 이동할 것이지 결정하는 파라미터

msg : 모바일 페이지로 이동할 때 사용자에게 보여줄 메시지 

*/

function goMobilePage(mobile_url, go_flag, msg)

{

var userAgent = window.navigator.userAgent;

var mobileKeyWords = new Array();

var is_mobile = false;

mobileKeyWords.push("iPhone");

mobileKeyWords.push("iPod");

mobileKeyWords.push("BlackBerry");

mobileKeyWords.push("Android");

mobileKeyWords.push("Windows CE");

mobileKeyWords.push("LG");

mobileKeyWords.push("MOT");

mobileKeyWords.push("SAMSUNG");

mobileKeyWords.push("SonyEricsson");


//유효성 체크

if(!userAgent)

{

window.alert("사용하시는 브라우저의 정보를 얻을 수 없습니다.");

return;

}


//웹 브라우저 정보의 문자들을 대문자로 변환

userAgent = userAgent.toUpperCase();


//반복문을 수행하여 모바일 키워드에 매칭되는것이 존재하는지 검사

for(var i=0 ; i<mobileKeyWords.length ; i++)

{

mobileKeyWords[i] = mobileKeyWords[i].toUpperCase();

if(userAgent.indexOf(mobileKeyWords[i]) != -1)

is_mobile = true;

}



//모바일 페이지가 맞고, go_flag 값이 true이면 지정된 모바일 페이지로 이동

if(is_mobile == true && go_flag == true)

{

//보여줄 메시지가 존재하는 경우만 Alert 수행

if(msg && msg != "") window.alert(msg);


//모바일 페이지로 이동

window.location.href = mobile_url;

}

}


//사용예시

goMobilePage("http://m.naver.com", true, "모바일 페이지로 이동합니다.");