1) 인스타그램 Web UI 클론 코딩
2) 목적
전체 부분인 stories의 width와
보이는 부분인 card의 width를 구해 차이만큼을
max-margin으로 잡고 버튼을 누를때마다 margin-left를 변경
// 스토리 슬라이드 함수
// vector : 슬라이드 방향 - 0:왼쪽, 1:오른쪽
function move_story_slide(vector) {
let margin_text = $('#stories').css('margin-left')
let width_text = $('#stories').css('width')
let box_text = $('#card').css('width')
let margin_num = Number(margin_text.slice(0, -2))
let width_num = Number(width_text.slice(0, -2))
let box_num = Number(box_text.slice(0, -2))
let max_margin = 0 // 최대 마진 값
let move_margin = 150 // 한번 이동할 때 움직일 마진 값
if (width_num > box_num) {
max_margin = width_num - box_num
}
if (vector == 1) {
if (margin_num == 0) {
$('#bg_slide_button_left').css("opacity", "1")
$('#bg_slide_button_left').css("display", "block")
}
margin_num = margin_num - move_margin
if (margin_num < -1 * max_margin) {
margin_num = -1 * max_margin
$('#bg_slide_button_right').css("opacity", "0")
$('#bg_slide_button_right').css("display", "none")
}
} else {
if (margin_num == -1 * max_margin) {
$('#bg_slide_button_right').css("opacity", "1")
$('#bg_slide_button_right').css("display", "block")
}
margin_num = margin_num + move_margin
if (margin_num > 0) {
margin_num = 0
$('#bg_slide_button_left').css("opacity", "0")
$('#bg_slide_button_left').css("display", "none")
}
}
let update_margin = (margin_num).toString() + "px"
$('#stories').css('margin-left', update_margin)
}
포스트별 name을 붙여서 포스트를 구분하여 버튼활성화
// 현재 선택된 댓글창에 상태에 따라 게시 버튼 효과 변경
$('.post_comment_input').on('focus blur keyup', () => {
let name = $(':focus').attr('name');
if($(`.post_comment_input[name='${name}']`).val() === ""){
$(`.post_comment_input_btn[name='${name}']`).css('opacity', '0.5')
} else {
$(`.post_comment_input_btn[name='${name}']`).css('opacity', '1')
}
})
https://velog.io/@kimphysicsman/내일배움캠프-Instagram-clone-coding-2-1일차-개발일지
https://github.com/kimphysicsman/clone_instagram
안녕하세요 동우님! 김준태 튜터입니다!
코드를 살펴보았는데요, 몇 가지 부분만 보완하시면 좋을 것 같습니다.
1. html 태그 내부에다가 style="" 이렇게 작성하시는건 지양하시는게 좋습니다! 당장 작성할 때는 편한데요, 프로젝트가 커지게 되면 관리하기가 어려워 집니다.
2. div class="footer" id="footer" 요렇게 작성하신 부분은 그냥 footer 태그를 쓰셔도 괜찮았을 것 같습니다!
성실하게 개발일지 작성하시는 모습이 보기 좋습니다, 수고많으셨어요!