λμμ μλ μμ±νλ μ½ν μΈ μ½μ κ³Ό μ€ν¨ μμ μΌλ‘ λ°©λ¬Έμ νμ±ν νκΈ°
λ°νμΌ: 2024. 11. 7.
ν°μ€ν 리 λΈλ‘κ·Έμ μ νλΈ λμμ 리μ€νΈ μλ μμ±νλ λ°©λ²
μ νλΈ μμ λΈλ‘κ·Έ μ½μ λ°©λ²κ³Ό λ°μν λμμΈ μ΅μ ν
ν°μ€ν 리 λΈλ‘κ·Έ λμμ 리μ€νΈ λ§λ€κΈ°
λΈλ‘κ·Έλ₯Ό μ΄μνλ©΄μ κΈλ§μΌλ‘ μ½ν μΈ λ₯Ό μ λ¬νλ λ° νκ³κ° λκ»΄μ§ λκ° μμ΅λλ€. νΉν μμ¦μ²λΌ λ€μν νμμ λ―Έλμ΄ μλΉκ° νμ±νλ μλμμλ κΈλ§μΌλ‘λ λ μλ€μκ² μΆ©λΆν μ 보λ₯Ό μ λ¬νκΈ° μ΄λ €μ΄ κ²½μ°κ° λ§μ΅λλ€. μ΄λ΄ λ μ μ©ν λκ΅¬κ° λ°λ‘ λμμμ λλ€.
μ νλΈ μ±λμ μ΄μ μ€μ΄κ±°λ λμμ μ½ν μΈ λ₯Ό μ μνλ λΈλ‘κ±°λΌλ©΄, μμ μ λΈλ‘κ·Έμ λμμμ ν¨κ³Όμ μΌλ‘ ν΅ν©νλ κ²μ λ μ΄μ μ νμ΄ μλ νμκ° λμμ΅λλ€. μ΄ κΈμμλ λΈλ‘κ·Έμ λμμμ 곡μ νκ³ , λΈλ‘κ·Έ μ€ν¨μ μμ νμ¬ μ΄λ₯Ό μ λ ΈμΆμν€λ λ°©λ²μ λν΄ λ€λ€λ³΄κ² μ΅λλ€.
λΈλ‘κ·Έμμ λμμμ μ€μμ±
κΈ°μ‘΄μ λΈλ‘κ·Έλ κΈκ³Ό μ΄λ―Έμ§ μ€μ¬μΌλ‘ μ΄μλλ κ²½μ°κ° λ§μμ΅λλ€. νμ§λ§ μ΄μ λ λμμ μ½ν μΈ λ₯Ό κ²°ν©ν λΈλ‘κ·Έ μ΄μμ΄ νμμ μΈ μμλ‘ μ리μ‘κ³ μμ΅λλ€. νΉν μ νλΈλ Vimeoμ κ°μ νλ«νΌμμ λμμμ μ μνκ³ μ΄μνλ λΈλ‘κ±°κ° λμ΄λλ©΄μ, μ΄λ₯Ό λΈλ‘κ·Έμ ν΅ν©νλ κ²μ΄ νΈλ λλ‘ μ리μ‘μμ΅λλ€.
λμμμ κΈλ³΄λ€ μ§κ΄μ μ΄κ³ λΉ λ₯΄κ² μ 보λ₯Ό μ λ¬ν μ μλ μ₯μ μ΄ μμ΅λλ€. λν, μμ μ½ν μΈ λ μμ²κ°μ μΈ μμκ° κ²°ν©λμ΄ λ μμ κ΄μ¬μ λκΈ° λ μ©μ΄ν©λλ€.
μλ₯Ό λ€μ΄, μ νλΈ μμ μμ κ°μλ 리뷰, νν λ¦¬μΌ λ±μ λ΄μλλ©΄, λ°©λ¬Έμλ κΈλ‘λ§ μ€λͺ νλ κ²λ³΄λ€ μμμΌλ‘ μ§μ 보λ κ²μ΄ ν¨μ¬ μ μ΅νκ³ μ΄ν΄κ° λΉ λ₯Ό μ μμ΅λλ€. λν, λΈλ‘κ·Έμ λ°©λ¬Έμ μκ° λ§μμ§μλ‘ λμμ μ½ν μΈ λ λμ± μ€μν μν μ νκ² λ©λλ€.
λΈλ‘κ·Έ μ€ν¨ μμ μ μ μ 쑰건
κ·Έλ λ€λ©΄ ν°μ€ν 리 λΈλ‘κ·Έμ λμμμ μ΄λ»κ² ν΅ν©ν μ μμκΉμ?
μ°μ , λΈλ‘κ·Έ μ€ν¨μ μμ νλ©΄ λ©λλ€. κΈ°λ³Έμ μΈ μ€ν¨μ ν μ€νΈ κΈ°λ°μ μ½ν μΈ μλ μ ν©νμ§λ§, λμμ μ½ν μΈ λ₯Ό ν¨κ³Όμ μΌλ‘ λ ΈμΆμν€κΈ°μλ λΆμ‘±ν μ μμ΅λλ€. λ°λΌμ, λΈλ‘κ·Έμ μ€ν¨μ λμμ μ½ν μΈ μ λ μ μ΄μΈλ¦¬λλ‘ μμ ν΄μΌ ν©λλ€.
μλλ μΉ΄ν κ³ λ¦¬ νμ΄μ§μ μλμΌλ‘ μ νλΈ λμμμ΄ μλλ ΈμΆλλ λ°©λ²μ λλ€.
1. λμμ μ μ© μμ μ ν
λΈλ‘κ·Έ μ€ν¨μ μμ ν λ, λμμ μ μ© μμμ λ§λλ κ²μ΄ μ’μ΅λλ€. λμμ μ μ© μμμ λΈλ‘κ·Έμ λ©μΈ μ½ν μΈ λΆλΆκ³Ό μΉ΄ν κ³ λ¦¬ νμ΄μ§ μ¬μ΄λκ° μλ λΈλ‘κ·Έλ μ΅μ κΈκ³Ό μΈκΈ°κΈμ μ½μ νλ λ°©λ²μ λλ€.
2. λμμ νλ μ΄μ΄μ μ°λ
λΈλ‘κ·Έ μ€ν¨μ μμ νλ λ λ€λ₯Έ μ€μν λΆλΆμ λμμ νλ μ΄μ΄μμ μ°λμ λλ€. μ νλΈλ Vimeoμ κ°μ μΈλΆ λμμ νλ«νΌμ λμμμ μ½μ ν λ, λμμμ ν¬κΈ°μ μμΉλ₯Ό μ΅μ νν΄μΌ ν©λλ€. μλ₯Ό λ€μ΄, λͺ¨λ°μΌ νλ©΄μμλ κΉ¨μ§μ§ μκ³ μ λ³΄μΌ μ μλλ‘ λ°μν λμμΈμ μ μ©νλ κ²μ΄ μ€μν©λλ€.
λν, λΈλ‘κ·Έ λμμΈμ λ§κ² μμ μΈλ€μΌμ΄λ μ¬μ κΈ°λ₯μ μ€μ νμ¬ μ¬μ©μ νΈλ¦¬λ₯Ό λμ΄λ κ²μ΄ μ’μ΅λλ€.
3. λμμ κ· ν λ§μΆκΈ°
λΈλ‘κ·Έλ κΈκ³Ό μ΄λ―Έμ§, κ·Έλ¦¬κ³ λμμμ΄ μ‘°νλ₯Ό μ΄λ£¨μ΄μΌ ν©λλ€. λ°λΌμ ν μ€νΈμ λμμμ κ· νμ μ λ§μΆλ κ²μ΄ μ€μν©λλ€. λΈλ‘κ·Έ κΈμ μμ±ν λ, λμμμ λ΄μ©κ³Ό κ΄λ ¨λ κ°λ¨ν μκ°λ μμ½μ ν¨κ» 첨λΆν΄λλ©΄ λ°©λ¬Έμκ° κΈκ³Ό μμμ λμμ μ΄ν΄ν μ μμ΄ μ’μ΅λλ€.
λΈλ‘κ·Έ μ€ν¨ μμ λ°©λ²
1. μ νλΈ μμ μλ² λ μ½λ μ½μ
μ νλΈ μμ μλ² λ μ½λλ₯Ό μ¬μ©νμ¬ μ νλΈμ μ λ‘λλ λμμμ λΈλ‘κ·Έμ μ½μ νλ λ°©λ²μ λ§€μ° κ°λ¨ν©λλ€. μ΄ λ°©λ²μ μ νλΈμμ μ 곡νλ κΈ°λ³Έμ μΈ κΈ°λ₯μΌλ‘, λ³λμ 볡μ‘ν μ½λ μμ μμ΄ λΉ λ₯΄κ² λμμμ λΈλ‘κ·Έμ μ½μ ν μ μμ΅λλ€.
μ νλΈ μλ² λ μ½λ μ½μ λ°©λ²
- μ νλΈμμ μμ μ°ΎκΈ° λ¨Όμ , μ νλΈμμ μ½μ ν μμμ μ°Ύμ΅λλ€.
- '곡μ ' λ²νΌ ν΄λ¦ μμ νλ¨μ μλ 곡μ λ²νΌμ ν΄λ¦ν©λλ€.
- 'μλ² λ' μ΅μ μ ν '곡μ ' μ΅μ μμ HTML μ½λκ° λνλ©λλ€.
- HTML μ½λ λ³΅μ¬ μ 곡λ μ£Όμ HTML μ½λλ₯Ό 볡μ¬ν©λλ€.
κΈνμ΄μ§ μ€ μ λΉν μμΉμ μλ μ½λμ λμμ μ£Όμλ₯Ό λ£μ΄μ£Όμλ©΄ λ©λλ€.
<p class="youtubeurl" data-ke-size="size16" style="user-select: auto !important;">
https://youtu.be/0jC-sW5l4_g?si=SrofVXVTTWtQH2a4</p>
λ°©λ²μ μ¬μ©νλ©΄ μ΄λ―Έμ§μ λμμμ΄ μμ°μ€λ½κ² μ½μ λμ΄ λ°©λ¬Έμλ λμμμ λ°λ‘ λ³Όμ μμ΅λλ€ λν, λΈλ‘κ·Έ λμμΈμ λ§κ² λμμμ ν¬κΈ°μ μμΉλ₯Ό μ‘°μ ν μ μμ΄, μ½ν μΈ μ μ΄μΈλ¦¬λ μ΅μ μ μμΉλ₯Ό λ§λ€ μ μμ΅λλ€.
μ¬μ© μμ
μ΄ μ¬μ΄νΈλ₯Ό μ΄λνλ©΄ μλ μ½λλ₯Ό μ μ©ν κ²°κ³Όλ₯Ό λ³Όμ μμ΅λλ€.
<s_list>
<div class="wrap_content">
<div id="content_search_list" class="content content_article_rep">
<div class="inner_content">
<div id="content_search" class="content sub_content">
<div class="inner_content">
<div class="section_area">
<h2 class="tit_section">
<span class="txt_section"></span>
</h2>
<ul class="list_article list_sub list_sub_type1">
<s_list_rep>
<li>
<a href="" class="link_thumb">
<s_list_rep_thumbnail>
<div class="youtube-container" data-url=""></div>
<div class="box_thumb thumb_img" style="background-image:url('//i1.daumcdn.net/thumb/C300x200.fwebp.q85/?fname='); display: none;"></div>
<div class="box_thumb no_img" style="display:none;"></div>
</s_list_rep_thumbnail>
<div class="cont_thumb">
<p class="txt_thumb"></p>
<p class="thumb_info">
<span class="date"></span>
<span class="name">by </span>
</p>
</div>
</a>
</li>
</s_list_rep>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</s_list>
2. ν°μ€ν 리 λμμ μ€ν¬λ¦½νΈ μ¬μ©
ν°μ€ν 리μμλ μλ μ½λλ₯Ό μ¬μ©νλ©΄ μ νλΈ λμμ μ μ½κ², μ¬μ©ν μ μμ΅λλ€. μ΄λ―Έμ§μ λμμμ ꡬλΆν΄μ λμμ λ§ν¬κ° μλ κ²½μ°λ μλμΌλ‘ μΉ΄ν κ³ λ¦¬ νμ΄μ§μ μ¬λ€μμ μλ λ ΈμΆμ΄ λ©λλ€. λν λμμμ΄ μλ κ²½μ°λ μ΄λ―Έμ§κ° λ ΈμΆλ©λλ€.
<script>
document.addEventListener("DOMContentLoaded", function() {
const items = document.querySelectorAll('.youtube-container');
items.forEach(container => {
const url = container.dataset.url;
loadYoutubeUrl(url, container);
});
});
function loadYoutubeUrl(url, container) {
fetch(url)
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.text();
})
.then(data => {
const parser = new DOMParser();
const doc = parser.parseFromString(data, 'text/html');
const youtubeUrlElement = doc.querySelector('p.youtubeurl');
const youtubeUrl = youtubeUrlElement ? youtubeUrlElement.textContent.trim() : null;
container.innerHTML = '';
const youtubeMatch = youtubeUrl ? youtubeUrl.match(/(?:youtube\.com\/(?:[^\/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^&]{11})/) : null;
if (youtubeMatch) {
const youtubeId = youtubeMatch[1];
const youtubeEmbedUrl = `https://www.youtube.com/embed/${youtubeId}`;
const videoContainer = document.createElement('iframe');
videoContainer.src = youtubeEmbedUrl;
videoContainer.frameBorder = "0";
videoContainer.allow = "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture";
videoContainer.allowFullscreen = true;
videoContainer.title = "fpv-openipc";
container.appendChild(videoContainer);
const thumbnailImage = container.closest('.link_thumb').querySelector('.box_thumb.thumb_img');
thumbnailImage.style.display = 'none';
} else {
const thumbnailImage = container.closest('.link_thumb').querySelector('.box_thumb.thumb_img');
thumbnailImage.style.display = 'block';
container.style.display = 'none';
}
})
.catch(error => {
console.error('Error fetching the page:', error);
});
}
</script>
3. CSSλ‘ λμμ λμμΈ
λμμμ λΈλ‘κ·Έμ μ½μ ν λ, CSS μ€νμΌμ μΆκ°νλ©΄ λμμ νλ μ΄μ΄μ ν¬κΈ°λ μμΉλ₯Ό μ΅μ νν μ μμ΅λλ€. νΉν, λ°μν λμμΈμ μ μ©νμ¬ λͺ¨λ°μΌμμλ λ¬Έμ μμ΄ λμμμ΄ μ 보μ΄λλ‘ ν μ μμ΅λλ€.
<style>
.youtube-container {
position: relative;
width: 100%;
padding-top: 56.25%;
overflow: hidden;
}
.youtube-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
</style>
λΈλ‘κ·Έμ λμμμ ν¨κ³Όμ μΌλ‘ ν΅ν©νλ κ²μ μ΄μ νμκ° λμμ΅λλ€.
νΉν, λμμ μ½ν μΈ λ λ μμ κ΄μ¬μ λκ³ , λΈλ‘κ·Έμ λ°©λ¬Έν μ¬λλ€μκ² λ λ§μ κ΄μ¬λ₯Ό λ§λ€μ μλ κ°λ ₯ν λꡬμ λλ€. ν°μ€ν 리 μ€ν¨μ μμ νκ³ λμμμ μ λ°°μΉν¨μΌλ‘μ¨, λ°©λ¬Έμλ€μκ² λμ± νμ±νκ³ λ€μ±λ‘μ΄ μ½ν μΈ λ₯Ό μ 곡ν μ μμ΅λλ€.
λμμκ³Ό ν μ€νΈκ° μ΄μ°λ¬μ§λ λΈλ‘κ·Έλ 맀λ ₯μ μ΄κ³ , λ μλ€μκ² λ λ§μ μ 보λ₯Ό ν¨κ³Όμ μΌλ‘ μ λ¬νκ² λ κ²μ λλ€.