탐폰 사용법 완벽 가이드, 삽입 각도·시간·수영장 활용까지 한 번에
탐폰 초보자도 실패 없이 성공하는 삽입 방법, 안전한 사용시간, 수영장·운동 시 활용 팁까지 완벽 정리했습니다.탐폰 사용법,탐폰 삽입 각도,탐폰 사용시간,탐폰 수영장 사용법,탐폰 교체 주기,탐폰 부작용 예방,여성 위생용품생리 기간에도 운동이나 수영을 자유롭게 하고 싶지만, 생리대는 한계가 있습니다.그래서 많은 여성들이 탐폰을 선택하지만,처음 시도할 때는 ‘아플까?’, ‘잘못 넣으면 어쩌지?’ 하는 두려움이 큽니다.이 글에서는 탐폰 사용법부터 안전한 탐폰 사용시간, 탐폰 삽입 각도, 그리고 수영장 사용법까지 한 번에 정리했습니다.1. 탐폰의 구조와 종류탐폰은 질 안에서 직접 생리혈을 흡수하는 위생용품입니다.겉으로 보이지 않아 활동이 자유롭습니다.냄새가 줄어 위생 관리가 쉽습니다.운동, 수영, 타이트한 옷 ..
2025. 8. 10.
setTimeout(function () {
const dragSensitivity = 0.55; // 드래그 민감도
const clickTolerance = 0; // 클릭 간주 기준 (px), 0: 클릭 시 이동 안함. 클릭 시 이동하려면 1~3값 설정 고려.
const dragRatioThreshold = 0.55; // 배너 너비 대비 드래그 비율, 배너 드래그 후 드롭 시.
const newWindow = 1; // 1: 새 창, 0: 현재 창
const bannerConfigs = [
{
selector: '.sliding-banner-300',
width: 300,
height: 300,
id: '940041',
trackingCode: 'AF2787934', // 본인의 추적 코드로 대체
subId: '',
tsource: '',
background: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/600x600-back2.jpg',
cover: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/WOW-30Ox25O-cover-left.png',
arrowIcon: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/arrowbtn.png',
dragDirection: 'left'
},
{
selector: '.sliding-banner-150',
width: 320,
height: 150,
id: '940041',
trackingCode: 'AF2787934', // 본인의 추적 코드로 대체
subId: '',
tsource: '',
background: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/640x300-back2.jpg',
cover: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/WOW-32Ox15O-cover-left.png',
arrowIcon: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/arrowbtn.png',
dragDirection: 'left'
},
{
selector: '.sliding-banner-250',
width: 300,
height: 250,
id: '940041',
trackingCode: 'AF2787934', // 본인의 추적 코드로 대체
subId: '',
tsource: '',
background: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/600x500-back2.jpg',
cover: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/WOW-30Ox25O-cover-left.png',
arrowIcon: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/arrowbtn.png',
dragDirection: 'left'
},
{
selector: '.sliding-banner-280',
width: 336,
height: 280,
id: '940041',
trackingCode: 'AF2787934', // 본인의 추적 코드로 대체
subId: '',
tsource: '',
background: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/600x500-back3.jpg',
cover: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/WOW-30Ox25O-cover-right.png',
arrowIcon: 'https://tistory1.daumcdn.net/tistory/8074023/skin/images/arrow-right.png',
dragDirection: 'right'
}
];
const coupangLink = 'https://link.coupang.com/a/c2PToW'; // 본인의 간편 링크로 대체 📍
function openLink(link) {
if (newWindow) {
window.open(link, '_blank');
} else {
history.replaceState(null, null, window.location.href);
window.location.href = link;
}
}
function generateIframeURL(config) {
return `https://ads-partners.coupang.com/widgets.html?id=${config.id}&template=carousel&trackingCode=${config.trackingCode}&subId=${encodeURIComponent(config.subId || '')}&width=${config.width}&height=${config.height}&tsource=${encodeURIComponent(config.tsource || '')}`;
}
function createBanner(config) {
const iframeURL = generateIframeURL(config);
const wrapper = document.createElement('div');
wrapper.innerHTML = `
당겨주세요!
`;
return wrapper;
}
// trigger event update
function setupDragEvents(dragTarget, animatedBanner, threshold, link, direction) {
let startX = 0, diffX = 0, triggered = false, isDragging = false;
function getClientX(e) {
return e.type.includes('touch') ? e.touches[0].clientX : e.clientX;
}
function triggerOnce() {
if (triggered) return;
triggered = true;
animatedBanner.style.transform = 'translateX(0)';
animatedBanner.classList.add('active');
openLink(link);
}
function startDrag(e) {
if (e.type.startsWith('mouse') && e.button !== 0) return;
isDragging = true;
startX = getClientX(e);
diffX = 0;
triggered = false;
animatedBanner.classList.remove('active');
e.preventDefault();
}
function onDrag(e) {
if (!isDragging) return;
const currentX = getClientX(e);
diffX = currentX - startX;
if ((direction === 'left' && diffX < 0) || (direction === 'right' && diffX > 0)) {
animatedBanner.style.transform = `translateX(${diffX}px)`;
if (Math.abs(diffX) > threshold) {
triggerOnce();
}
e.preventDefault();
}
}
function endDrag() {
if (!isDragging) return;
isDragging = false;
const dragRatio = Math.abs(diffX) / dragTarget.offsetWidth;
if (Math.abs(diffX) < clickTolerance || (
dragRatio >= dragRatioThreshold &&
((direction === 'left' && diffX < 0) || (direction === 'right' && diffX > 0))
)) {
triggerOnce();
} else {
animatedBanner.style.transform = 'translateX(0)';
animatedBanner.classList.add('active');
}
diffX = 0;
}
dragTarget.addEventListener('mousedown', startDrag);
dragTarget.addEventListener('mousemove', onDrag);
dragTarget.addEventListener('mouseup', endDrag);
dragTarget.addEventListener('mouseleave', endDrag);
dragTarget.addEventListener('touchstart', startDrag, { passive: false });
dragTarget.addEventListener('touchmove', onDrag, { passive: false });
dragTarget.addEventListener('touchend', endDrag);
}
// end
bannerConfigs.forEach(config => {
const targets = document.querySelectorAll(config.selector);
if (targets.length === 0) return;
targets.forEach(target => {
target.innerHTML = '';
const banner = createBanner(config);
target.appendChild(banner);
const customBox = banner.querySelector('.customBox');
const animatedBanner = banner.querySelector('.customBanner');
const threshold = config.width * dragSensitivity;
setupDragEvents(customBox, animatedBanner, threshold, coupangLink, config.dragDirection);
});
});
}, 100);