커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
강의에서 나온 동영상 대신 사진 넣으려고했는데 잘 안되어서요..
인생사진 쏙쏙 코딩네컷 v0
1주차
북마크
백*용
댓글
3
추천
0
조회수
20
조회수
20
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


유튜브 동영상 대신에 사진으로만 4장 집어넣으려고 기존 영상 코드 지우고 이미지 1,2,3이랑 같은 코드 넣고 숫자만 변경해주었는데

사진까지는 잘 들어오고 alert도 잘 나오는데 사진 밑에 설명만 이상하게 나와서요..

4번째 사진에 포인터 올려도 반응이 없고 오히려 3번째 사진에 3번째 사진설명만 나타나는데 어디를 잘못 붙여넣었는지 봐주실 수 있으실까요..?


스파르타 즉문즉답





작성한 코드 및 에러 메세지

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Document</title>

<style>

body{

margin: 0;

display: flex;

justify-content: center;

background-image: url(배경.png);

}

.container{

width: 390px;

background-color: #ff9d73;

height: 100%;

}

.photos{

margin-top: 30px;

}

.photo-frame{

background-color: white;

margin: 20px;

height: 200px;

background-size: cover;

/* photo-frame 밑에있는 요소를 photo-frame기준으로 어디에 위치할 것인지*/

position: relative;

cursor: pointer;

}

.footer{

display: flex;

/* row 로 잡으면 수평이 아닌 수직으로 정렬된다 */

flex-direction: column;

/* column으로 잡아주었던 것을 가운데(center)로 모아준다 */

align-items: center;

}

.f-title{

font-size: 25px;

color: white;

}

.f-date{

font-size: 15px;

font-weight: 500;

color: white;

}

.photo-description{

color: white;

background-color: black;

width: fit-content;

padding: 0 20px ;

margin-bottom: 10px;

border-radius: 10px;

/* relative 기준으로 잡는다*/

position: absolute;

/* 프레임 기준으로 밑에서 0만큼 올라와라 */

/* margon-bottom에 10px 값을 부여했으므로 그 만큼 띄운다 */

bottom: 0%;

/* 왼쪽에서 정확히 50%만큼 정확히 가운데 정렬 */

transform: translate(-50%);

left: 50%;

opacity: 0;

}

.video{

width: 100%;

height: 100%;

}

.showText{

opacity: 0;

}

.hideText{

opacity: 1;

transition: opacity 0.5s linear;

}

#image1{

background-image: url(./img1.png);

}

#image2{

background-image: url(./img2.png);

}

#image3{

background-image: url(./img3.png);

}

#image4{

background-image: url(./img4.png);

}

</style>

<script>

// 텍스트가 보여지는 기능

// 1. 몇 번째 사진에 마우스가 올라갔는지 확인(if문)

// 2. 해당 사진을 찾아 hideText class를 지워주고, showText는 삽입해줌

function showText(number) {

if (number === 1) {

document.querySelector("#desc1").classList.remove("hideText");

document.querySelector("#desc1").classList.add("showText");

} else if (number === 2) {

document.querySelector("#desc2").classList.remove("hideText");

document.querySelector("#desc2").classList.add("showText");

} else {

document.querySelector("#desc3").classList.remove("hideText");

document.querySelector("#desc3").classList.add("showText");

}

}


// 텍스트가 감춰지는 기능

// 1. 몇 번째 사진에서 마우스가 벗어났는지 확인(if문)

// 2. 해당 사진을 찾아 shotText class를 지워주고, hideText는 삽입해줌

function hideText(number) {

if (number === 1) {

document.querySelector("#desc1").classList.remove("showText");

document.querySelector("#desc1").classList.add("hideText");

} else if (number === 2) {

document.querySelector("#desc2").classList.remove("showText");

document.querySelector("#desc2").classList.add("hideText");

} else {

document.querySelector("#desc3").classList.remove("showText");

document.querySelector("#desc3").classList.add("hideText");

}

}


// 클릭 기능

// 1. 선택된 사진의 숫자를 가진 텍스트를 alert 형태로 출력해줌

function alertText(number) {

alert(`${number}번째 추억이에요! 눌러주셔서 감사합니다 :)`);

}

</script>

</head>

<body>

<div class="container">

<div class="photos">

<div id="image1" class="photo-frame"

id="image1"

class="photo-frame"

onmouseover="hideText(1)"

onmouseout="showText(1)"

onclick="alertText(1)"

>

<span id="desc1" class="photo-description">

첫 번째 이미지 설명

</span>

</div>

<div id="image2" class="photo-frame"

id="image1"

class="photo-frame"

onmouseover="hideText(2)"

onmouseout="showText(2)"

onclick="alertText(2)"

>

<span id="desc2" class="photo-description">

두 번째 이미지 설명

</span>

</div>

<div id="image3" class="photo-frame"

id="image1"

class="photo-frame"

onmouseover="hideText(3)"

onmouseout="showText(3)"

onclick="alertText(3)"

>

<span id="desc3" class="photo-description">

세 번째 이미지 설명

</span>

</div>

<div id="image4" class="photo-frame"

id="image1"

class="photo-frame"

onmouseover="hideText(4)"

onmouseout="showText(4)"

onclick="alertText(4)"

>

<span id="desc4" class="photo-description">

네 번째 이미지 설명

</span>

</div>

</div>

<div class="footer">

<p class="f-title">Happy Lunch Time</p>

<p class="f-date">2023.02.02</p>

</div>

</div>

</body>

</html>





취소
 공유
취소
댓글 0
댓글 알림
나의얼굴