//스크롤북마크 var bNetscape4plus = (navigator.appName == "Netscape" && navigator.appVersion.substring(0,1) >= "4"); var bExplorer4plus = (navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.substring(0,1) >= "4"); var happy_scroll_bookmark_sub = new Array(); var happy_scroll_bookmark_number = 0; var happy_scroll_bookmark_1 = new Array(); var happy_scroll_bookmark_2 = new Array(); var happy_scroll_bookmark_3 = new Array(); //최대 북마크 지정개수 var happy_scroll_max_cnt = 7; function in_array(needle,haystack) { cnt = haystack.length; for (i=0;i= happy_scroll_max_cnt ) { alert("북마크는 최대 "+happy_scroll_max_cnt+"개 까지 가능합니다."); return; } if ( happy_scroll_bookmark_number == 0 ) { happy_scroll_bookmark_number++; } else { //북마크한 배열 cnt = happy_scroll_bookmark_sub.length; if ( cnt == 0 ) { happy_scroll_bookmark_number = 1; } else { for (j=1;j<=happy_scroll_max_cnt ;j++ ) { if ( !in_array(j,happy_scroll_bookmark_sub) ) { happy_scroll_bookmark_number = j; break; } } } } var divMenu = document.getElementById('divBookMark'); if ( divMenu ) { if ( bNetscape4plus ) { yMenuFrom = divMenu.style.top.replace("px","")-35; //alert(yMenuFrom); } else if ( bExplorer4plus ) { yMenuFrom = parseInt (divMenu.style.top, 10)-35; } } bookmark_layer = document.getElementById('happy_scroll_bookmark_layer'); bookmark_layer_detail = document.getElementById('happy_scroll_bookmark_detail'); bookmark_layer_detail2 = document.getElementById('happy_scroll_bookmark_detail2'); //상세화면 북마크내역 //happy_scroll_bookmark_number 1~8번 까지 // if ( bookmark_layer_detail != undefined ) { sub_id = 'happy_scroll_bookmark_detail_'+happy_scroll_bookmark_number; str = '
'; str+= ''; str+= '책갈피'; str+= ''; str+= '삭제'; //str+= '삭제'; str+= '
'; //alert(str); //bookmark_layer_detail.innerHTML+= str; //alert(happy_scroll_bookmark_1); happy_scroll_bookmark_1[happy_scroll_bookmark_number] = str; tmp_str = ''; tmp_array = happy_scroll_bookmark_1; for (i=0;i<=tmp_array.length ;i++ ) { if ( tmp_array[i] != undefined ) { tmp_str+= tmp_array[i]; } } bookmark_layer_detail.innerHTML = tmp_str; } //따라다니는 북마크내역2 if ( bookmark_layer_detail2 != undefined ) { sub_id = 'happy_scroll_bookmark_detail2_'+happy_scroll_bookmark_number; str = '
'; str+= ''; str+= '책갈피'; str+= ''; //str+= '삭제'; str+= '
'; //alert(str); //bookmark_layer_detail2.innerHTML+= str; happy_scroll_bookmark_2[happy_scroll_bookmark_number] = str; tmp_str = ''; tmp_array = happy_scroll_bookmark_2; for (i=0;i<=tmp_array.length ;i++ ) { if ( tmp_array[i] != undefined ) { tmp_str+= tmp_array[i]; } } bookmark_layer_detail2.innerHTML = tmp_str; } //북마크 찍히는 부분 if ( bookmark_layer != undefined ) { sub_id = 'happy_scroll_bookmark_'+happy_scroll_bookmark_number; str = '
'; str+= '책갈피'; //str+= ''; str+= '삭제'; str+= '
'; //alert(str); //bookmark_layer.innerHTML+= str; happy_scroll_bookmark_3[happy_scroll_bookmark_number] = str; tmp_str = ''; tmp_array = happy_scroll_bookmark_3; for (i=0;i<=tmp_array.length ;i++ ) { if ( tmp_array[i] != undefined ) { tmp_str+= tmp_array[i]; } } bookmark_layer.innerHTML = tmp_str; happy_scroll_bookmark_sub.push(happy_scroll_bookmark_number); } if ( happy_scroll_bookmark_sub.length >= 1 ) { document.getElementById('detail_bookmark_layer').style.display = ''; } //alert(happy_scroll_bookmark_sub); } //스크롤북마크 삭제 function happy_bookmark_del(bookmark_id) { bookmark_layer = document.getElementById('happy_scroll_bookmark_layer'); bookmark_layer_detail = document.getElementById('happy_scroll_bookmark_detail'); bookmark_layer_detail2 = document.getElementById('happy_scroll_bookmark_detail2'); //따라다니는 북마크내역2 if ( bookmark_layer_detail2 != undefined ) { //alert(bookmark_layer_detal.childNodes.length); child_cnt = bookmark_layer_detail2.childNodes.length; for(i=0;i 6) radius = 6; MAX = radius * 2 + 1; /* create table {{ */ Table = document.createElement('TABLE'); TBody = document.createElement('TBODY'); Table.cellSpacing = 0; Table.cellPadding = 0; for (trIDX=0; trIDX < MAX; trIDX++) { TR = document.createElement('TR'); Space = Math.abs(trIDX - parseInt(radius)); for (tdIDX=0; tdIDX < MAX; tdIDX++) { TD = document.createElement('TD'); styleWidth = '1px'; styleHeight = '1px'; if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null; else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null; else if (radius > 2) { if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px'; if (Math.abs(trIDX - radius) == 1) styleHeight = '2px'; } if (styleWidth != null) TD.style.width = styleWidth; if (styleHeight != null) TD.style.height = styleHeight; if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor; else if (tdIDX > Space && Space < MAX - tdIDX - 1) TD.style.backgroundColor = bgcolor; if (Space == 0 && tdIDX == radius) TD.appendChild(obj); TR.appendChild(TD); } TBody.appendChild(TR); } /* }} */ Table.appendChild(TBody); // insert table and remove original table Parent.insertBefore(Table, objTmp); } function img_change(mode) { img_count = document.getElementById('img_count').value; Now_show = ''; Now_show_plus = ''; Now_show_minus = ''; for (ii=0; ii 0 ) ? i - 1 : max_idx; } else { show_idx = ( i < max_idx ) ? i + 1 : 0; } break; } } $("#detail_image_move_container").find("div").hide(); $("#detail_image_move_container").find("div").eq(show_idx).show(); } //headerBar_height가 undefined 이면 미니홈이며 상단 탑메뉴 고정 기능 없음. //0 일경우 일반 상세. if( headerBar_height == undefined ) { var headerBar_height = 0; } else if( headerBar_height == 0 ) { var headerBar_height = 73; } $( document ).ready( function() { //var jbOffset = $( '.scrollMoveBox' ).offset(); //2020-02-13 hun 수정함. scrollMoveBox 상단의 디자인 및 동적 레이어의 추가에 따라서 top 포지션은 항상 변경될 수 있으므로 초기값으로 대응하는건 버그다!! $( window ).scroll( function() { //scroll_move_layer() scroll_move_layer(); }); scroll_move_layer_change_height(); //scroll_move_layer(); //새로고침 후 최하단으로 가거나 어설픈 위치에 걸릴 경우 레이어 정리하기 위해서 호출! scroll_move_layer(); }); $( window ).resize(scroll_move_layer_change_height); function scroll_layer_check( text ){ $('#test_result').html($('#test_result').html() + text); } //옵션창의 height 을 조절하여 브라우저 크기에 반영하는 함수. function scroll_move_layer_change_height() { var browser_height = $( window ).height(); var header_scrollMoveBox_height = headerBar_height + $('.scrollMoveBox').height(); var detail_view_right_scroll_height = $('#detail_view_right_scroll').height(); var footer_top = $('#footer_c').offset().top; var option_layer_top = $('.scrollMoveBox').offset().top + $('.scrollMoveBox').height(); var option_layer_height = footer_top - option_layer_top; var detail_view_right_scroll_top2 = ( detail_view_right_scroll_height - header_scrollMoveBox_height - option_layer_height ) * -1; $('#detail_view_right_scroll').css("top",detail_view_right_scroll_top2+"px"); //장바구니 구매하기 버튼이 최하단으로 내려간 상태에서 브라우저 크기 조절할 경우 top 포지션도 같이 반영 되어야 함. $('#detail_view_right_auto_contents').css("height",browser_height - header_scrollMoveBox_height - $('#detail_view_right_scroll_table_bottom').height() +"px"); } //최상단 배너, 메뉴 크기 구하고 이를 이용하여 스크롤 위치에 따라서 fixed 처리하거나 해제하는 함수. function scroll_move_layer_old() { //headerBar_height 상단 탑메뉴 높이 //$('.scrollMoveBox').offset().top 상세설명/상품평/상품문의 탭메뉴 포지션 var jbOffset = $('#scrollMoveBox_target').offset(); var header_scrollMoveBox_height = headerBar_height + $('.scrollMoveBox').height(); var detail_view_right_scroll_height = $('#detail_view_right_scroll').height(); var footer_top = $('#footer_c').offset().top; var option_layer_top = $('.scrollMoveBox').offset().top + $('.scrollMoveBox').height(); var option_layer_height = footer_top - option_layer_top; var detail_view_right_scroll_top2 = ( detail_view_right_scroll_height - header_scrollMoveBox_height - option_layer_height ) * -1; var scrollMoveBox_position_min = $( document ).scrollTop() + header_scrollMoveBox_height; //console.log($( document ).scrollTop()+' + '+header_scrollMoveBox_height, ); if ( scrollMoveBox_position_min > jbOffset.top && $('.scrollMoveBox').hasClass('scrollfixed') === false ){ $( '.scrollMoveBox' ).addClass( 'scrollfixed' ); $('#detail_view_right_scroll').addClass( 'scrollfixed' ); $('#detail_view_right_scroll').css("top",header_scrollMoveBox_height+"px"); } else if( scrollMoveBox_position_min <= jbOffset.top && $('.scrollMoveBox').hasClass('scrollfixed') === true ){ $( '.scrollMoveBox' ).removeClass( 'scrollfixed' ); $('#detail_view_right_scroll').removeClass( 'scrollfixed' ); } if( header_scrollMoveBox_height > detail_view_right_scroll_top2 ) { $('#detail_view_right_scroll').css("top",detail_view_right_scroll_top2+"px"); } else { $('#detail_view_right_scroll').css("top",header_scrollMoveBox_height+"px"); } scroll_layer_check( '
headerBar_height : '+headerBar_height ); } var scrollMoveBox_fixed = false; var scrollOptionBox_fixed = false; var header_use = true; function scroll_move_layer() { if( $('#headerBar').offset() == undefined ){ //상단이 없다고 판단함. var header_bttom_position = $( document ).scrollTop() + headerBar_height; } else{ var header_bttom_position = $('#headerBar').offset().top + headerBar_height; } //console.log( 0 , $('#scrollMoveBox_target').offset().top , ' ( '+( header_bttom_position - $('#scrollMoveBox_target').offset().top )+' ) '); //디버깅용 //scrollMoveBox 고정 또는 해제 스크립트 if( scrollMoveBox_fixed == false ) { if( ( ( header_bttom_position - $('#scrollMoveBox_target').offset().top ) >= 1 ) ){ //고정 조건 $( '.scrollMoveBox' ).addClass( 'scrollfixed' ); scrollMoveBox_fixed = true; //한가지 더 //console.log( $('#scrollMoveBox_target').offset().top + $('.scrollMoveBox').height() ); $("#detail_dtab_1").addClass( 'scroll_contents_top' ); //detail_dtab_1 } } else{ if( ( ( header_bttom_position - $('#scrollMoveBox_target').offset().top ) < 1 ) ){ //해제 조건 $( '.scrollMoveBox' ).removeClass( 'scrollfixed' ); scrollMoveBox_fixed = false; $("#detail_dtab_1").removeClass( 'scroll_contents_top' ); } } var scrollMoveBox_bttom_position = $('.scrollMoveBox').offset().top + $('.scrollMoveBox').height(); var header_scrollMoveBox_height = headerBar_height + $('.scrollMoveBox').height(); //console.log($('#headerBar').offset().top , $('#scrollMoveBox_target').offset().top , ' ( '+( header_bttom_position - $('#scrollMoveBox_target').offset().top )+' ) '); //디버깅용 //detail_view_right_scroll 고정 또는 해제 스크립트 if( detail_view_right_scroll == false ){ if( ( ( scrollMoveBox_bttom_position - $('#detail_view_right_scroll_target').offset().top ) >= 1 ) ){ //고정 조건 detail_view_right_scroll = true; $('#detail_view_right_scroll').addClass( 'scrollfixed' ); $('#detail_view_right_scroll').css("top",header_scrollMoveBox_height+"px"); } } else{ var detail_view_right_scroll_height = $('#detail_view_right_scroll').height(); var footer_top = $('#footer_c').offset().top; var option_layer_top = $('.scrollMoveBox').offset().top + $('.scrollMoveBox').height(); var option_layer_height = footer_top - option_layer_top; var detail_view_right_scroll_top2 = ( detail_view_right_scroll_height - header_scrollMoveBox_height - option_layer_height ) * -1; if( header_scrollMoveBox_height > detail_view_right_scroll_top2 ) { $('#detail_view_right_scroll').css("top",detail_view_right_scroll_top2+"px"); } else { $('#detail_view_right_scroll').css("top",header_scrollMoveBox_height+"px"); } if( ( ( scrollMoveBox_bttom_position - $('#detail_view_right_scroll_target').offset().top ) < 1 ) ){ //해제 조건 $('#detail_view_right_scroll').removeClass( 'scrollfixed' ); detail_view_right_scroll = false; } } } function option_slide_big_img_change(img_id) { $("#"+img_id).click(); }