본문 바로가기
반응형

이슈&뉴스461

서광급 예타 통과! 김포·검단~서울역 20분 시대, 지금이 투자 타이밍 주제 시각자료 서광급 예타 통과! 김포·검단~서울역 20분 시대, 지금이 투자 타이밍 서광급 예비타당성조사 예타 통과로 김포·검단~서울역 20분 시대 개막! 지역 부동산 가치 상승과 GTX-D 연계까지 총정리했습니다.서울과의 물리적 거리가 심리적 거리까지 만들던 김포·검단 주민들.하지만 이젠 다릅니다. 드디어 서광급 예타가 통과되었기 때문입니다.2025년 7월 10일, 기획재정부 제7차 재정사업평가위원회는 서부권 광역급행철도(서광급)의 예비타당성조사 통과를 확정했습니다.서광급 노선 한눈에 보기 – 어디서 어디까지?서광급은 수도권 서북부 지역의 오랜 교통 소외 문제를 해결하고자 계획된 광역급행철도(GTX) 수준의 교통 프로젝트입니다.총 연장: 49km신설 구간: 김포 장기역~부천종합운동장역 (21km)공용 구간: 부천~청량리 (GTX-B 28km 공유)주요 정차 예상 구간:김포 장기인천 검.. 2025. 7. 11.
손효숙 프로필 총정리: 리박스쿨부터 댓글조작 논란까지 주제 시각자료 손효숙 프로필 총정리: 리박스쿨부터 댓글조작 논란까지 손효숙 리박스쿨 대표의 경력, 자문 활동, 논란과 해명까지 총정리했습니다. 공무원부터 교육운동가까지, 모든 정보 한눈에 보기!최근 ‘리박스쿨’이라는 이름과 함께 자주 등장하는 인물, 손효숙 대표.2025년 7월 국회 청문회에 출석하면서 뜨거운 논란의 중심에 섰습니다.이 글에서는 손효숙프로필을 바탕으로, 그녀의 과거 경력부터 교육부 자문위원 활동, 그리고 논란의 핵심까지 체계적으로 정리했습니다.손효숙, 40년 공직 생활을 지낸 교육운동가공무원에서 리박스쿨 대표로1956년생인 손효숙은 9급 공무원으로 사회생활을 시작해 오산우체국장까지 오른 인물입니다.공직생활은 약 40년간 이어졌고, 퇴직 후에는 교육운동에 전념합니다.오산우체국장 (제5대, 2012~2015년)교육부 정책자문위원 (2024~2025년)민주평통.. 2025. 7. 11.
메스를든사냥꾼 총정리: 공개일부터 결말까지 한눈에 보는 필수 가이드 주제 시각자료 메스를든사냥꾼 총정리: 공개일부터 결말까지 한눈에 보는 필수 가이드 2025년 최대 기대작 ‘메스를든사냥꾼’, 공개일·결말·몇부작·출연진·OTT까지 한눈에 정리해 드립니다.2025년 상반기, 디즈니플러스와 U+tv를 뜨겁게 달군 드라마가 있습니다.바로 하드코어 범죄 심리 스릴러 《메스를든사냥꾼》입니다.이 글에서는 공개일, 몇부작, 결말, 등장인물, OTT 정보, 원작 소설까지 시청 전에 꼭 알아야 할 모든 정보를 한눈에 정리해드립니다.메스를든사냥꾼 공개일 및 방영 플랫폼공개일: 2025년 6월 16일방영 기간: 2025년 6월 16일 ~ 7월 10일방영 방식: 매주 월~목, 하루 1편씩 총 16부작OTT 플랫폼:디즈니플러스U+모바일tvU+tv☞ 디즈니플러스에서는 공개 직후 콘텐츠 순위 1위를 기록하며 화제를 모았습니다.디즈니플러스 바로가기">디즈니플러스 바로가기몇부작? .. 2025. 7. 10.
토렌트 사이트 순위 2025 TOP 37|안전 다운로드 추천 정리 주제 시각자료 토렌트 사이트 순위 2025 TOP 37|안전 다운로드 추천 정리 2025년 기준 인기 토렌트 사이트 37곳을 순위별 정리했습니다. 안전하고 빠른 다운로드를 위한 최신 추천 목록을 확인해 보세요.토렌트를 아직도 무작정 검색해서 찾고 계신가요?2025년 최신 기준으로 안전하고 인기 있는 토렌트 사이트 순위 Top 37을 정리했습니다.저도 이 목록 하나로 시간 절약, 자료 수집, 광고 스트레스 없이 깔끔하게 정리할 수 있었어요.토렌트 사이트란? 원리부터 핵심 개념까지토렌트는 파일을 여러 사용자에게 분산 저장한 뒤, 동시에 다운로드하는 P2P 파일 공유 시스템입니다.기존 서버 기반 다운로드보다 빠르고, 대용량 파일 전송에 유리합니다.그러나 사이트 선택은 매우 중요합니다.일부 사이트는 악성코드나 광고 스팸이 심하고최신 자료가 없거나 느린 속도의 문제도 생깁니다.그래서, 202.. 2025. 7. 10.
타코피의 원죄 애니 결말, 순수악이 남긴 무서운 교훈 주제 시각자료 타코피의 원죄 애니 결말, 순수악이 남긴 무서운 교훈 타코피의 원죄 애니 결말 분석부터 캐릭터 관계, 순수악의 의미까지. 넷플릭스 공개 이후 폭발적 반응 이유를 정리했습니다.당신은 ‘타코피의 원죄’를 알고 있나요?2025년 여름, 넷플릭스를 통해 국내에 공개된 이 애니메이션은 보기 전과 후의 감정이 전혀 달라집니다.그냥 귀엽기만 할 것 같았던 외계 생명체 '타코피'는, 시청자에게 묵직한 메시지를 남깁니다.타코피의 원죄 줄거리 요약: 해피를 전하려 왔지만…타코피는 ‘해피 별’에서 지구로 파견된 외계 생명체입니다.그의 목적은 행복을 퍼뜨리는 것. 그러나 지구에서 만난 초등학생 쿠제 시즈카의 삶은 불행 그 자체였습니다.부모의 이혼무관심한 양육자학교에서의 집단 괴롭힘유일한 위로였던 강아지 챠피마저 빼앗김이 모든 비극 속에서 타코피는 '해피 도구'를 사용해 시즈카를.. 2025. 7. 9.
재혼황후 드라마 개봉일·결말·웹툰 원작 완전 정리 (출연진 미리보기) 주제 시각자료 재혼황후 드라마 개봉일·결말·웹툰 원작 완전 정리 (출연진 미리보기) 2025년 디즈니+ 기대작 ‘재혼황후’ 드라마 개봉일, 결말, 줄거리, 웹툰·웹소설 원작, 출연진 정보까지 A to Z로 정리했습니다.2025년 하반기, 디즈니+를 통해 공개될 재혼황후는 웹소설과 웹툰 팬들이 기다려온 최대 기대작입니다. 이미 7,000만 뷰를 돌파한 원작의 인기에 힘입어 드라마화가 결정되었으며, 신민아, 주지훈, 이종석, 이세영 등 화려한 배우진까지 공개되면서 대중의 이목이 집중되고 있습니다.재혼황후 줄거리 요약: 황후의 재혼 선언, 왜 특별한가?재혼황후는 동대제국의 황후 나비에가 남편 소비에슈의 외도로 인해 이혼을 수락하고, 옆 나라 서왕국의 황자 하인리와 재혼을 요구하며 시작되는 파격적인 이야기입니다. 단순한 로맨스를 넘어 정치, 권력, 여성의 자아를 그린 서사극으로 평가받고 있습니.. 2025. 7. 9.
반응형

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);