|  | 
| 
 |  |  | | 
| À¯Æ©ºê µ¿¿µ»óÀÇ ½æ³×ÀÏ À̹ÌÁö¸¦ üũÇÏ¿© À¯È¿ÇÑ ¿µ»óÀ̾ƴҶ§ ¿¬°áµÈ üũ¹Ú½º¸¦ ÀÚµ¿À¸·Î üũ |  |  
|  |  |    | 1³â Àü |  | 
| À¯Æ©ºê µ¿¿µ»ó ½æ³×ÀÏÀÇ °æ¿ì, µ¿¿µ»óÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é À¯È¿ÇÏÁö ¾ÊÀº ½æ³×ÀÏ URLÀ» ¿äûÇÒ ¶§ ±âº» "À̹ÌÁö ¾øÀ½" À̹ÌÁö°¡ ·ÎµåµË´Ï´Ù.
 ÀÌ À̹ÌÁö´Â YouTube ¼¹ö¿¡¼ Á¦°øÇϱ⠶§¹®¿¡ onerror À̺¥Æ®°¡ ¹ß»ýÇÏÁö ¾Ê½À´Ï´Ù.
 µû¶ó¼ onerror¸¦ ÀÌ¿ëÇÑ ¹æ½ÄÀ¸·Î´Â À¯È¿ÇÏÁö ¾ÊÀº µ¿¿µ»ó ½æ³×ÀÏÀ» °¨ÁöÇÒ ¼ö ¾ø½À´Ï´Ù.
 
 ´ë½Å, À¯Æ©ºê API¸¦ »ç¿ëÇÏ¿© µ¿¿µ»óÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇϰųª,
 À̹ÌÁöÀÇ Å©±â¸¦ °Ë»çÇÏ¿© "À̹ÌÁö ¾øÀ½" À̹ÌÁö¸¦ °¨ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
 ÈÄÀÚÀÇ ¹æ¹ýÀÌ ´õ °£´ÜÇϹǷÎ, À̸¦ ¼³¸íÇϰڽÀ´Ï´Ù.
 
 À̹ÌÁö Å©±â °Ë»ç ¹æ½Ä
 YouTubeÀÇ "À̹ÌÁö ¾øÀ½" À̹ÌÁöÀÇ Å©±â´Â ÀϹÝÀûÀ¸·Î °íÁ¤µÇ¾î ÀÖ½À´Ï´Ù.
 ¿¹¸¦ µé¾î, °¡·Î¿Í ¼¼·Î Å©±â°¡ ÀÛÀº ±âº» À̹ÌÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
 µû¶ó¼, À̹ÌÁö ·ÎµùÀÌ ¿Ï·áµÈ ÈÄ À̹ÌÁö Å©±â¸¦ °Ë»çÇÏ¿© À̸¦ °¨ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
 
 ÄÚµå ¿¹Á¦
 ¾Æ·¡ ÄÚµå´Â À¯Æ©ºê ½æ³×ÀÏÀÌ "À̹ÌÁö ¾øÀ½"ÀÎ °æ¿ì ÀÚµ¿À¸·Î üũ¹Ú½º¸¦ üũÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù.
 
 <!-- üũ¹Ú½º¿Í À¯Æ©ºê µ¿¿µ»ó ½æ³×ÀÏ À̹ÌÁö ¸ñ·Ï -->
 <input type="checkbox" id="checkbox1" name="cart" value="1">
 <img border="0" src="https://img.youtube.com/vi/INVALID_ID/hqdefault.jpg" width="191" height="" data-checkbox-id="checkbox1" /> Á¦¸ñ1
 
 <input type="checkbox" id="checkbox2" name="cart" value="2">
 <img border="0" src="https://img.youtube.com/vi/VALID_ID/hqdefault.jpg" width="191" height="" data-checkbox-id="checkbox2" /> Á¦¸ñ2
 
 <input type="checkbox" id="checkbox3" name="cart" value="3">
 <img border="0" src="https://img.youtube.com/vi/INVALID_ID/hqdefault.jpg" width="191" height="" data-checkbox-id="checkbox3" /> Á¦¸ñ3
 
 <script>
 document.addEventListener("DOMContentLoaded", function() {
 const images = document.querySelectorAll('img');
 
 images.forEach((img) => {
 img.onload = function() {
 // À̹ÌÁö°¡ ·ÎµåµÈ ÈÄ, ³Êºñ¿Í ³ôÀ̸¦ È®ÀÎÇÏ¿© "À̹ÌÁö ¾øÀ½" À̹ÌÁöÀÎÁö üũ
 if (img.naturalWidth === 120 && img.naturalHeight === 90) {
 const checkboxId = img.getAttribute('data-checkbox-id');
 if (checkboxId) {
 document.getElementById(checkboxId).checked = true; // üũ¹Ú½º ÀÚµ¿ üũ
 }
 }
 };
 });
 });
 </script>
 
 ÄÚµå ¼³¸í
 1, onload À̺¥Æ® »ç¿ë:
 °¢ À̹ÌÁö¿¡ ´ëÇØ onload À̺¥Æ® Çڵ鷯¸¦ Ãß°¡ÇÕ´Ï´Ù.
 À̹ÌÁö¸¦ ·ÎµåÇÑ ÈÄ, À̹ÌÁöÀÇ ÀÚ¿¬ Å©±â(naturalWidth¿Í naturalHeight)¸¦ È®ÀÎÇÕ´Ï´Ù.
 
 2, À̹ÌÁö Å©±â °Ë»ç:
 YouTubeÀÇ "À̹ÌÁö ¾øÀ½" À̹ÌÁöÀÇ Å©±â´Â ÀϹÝÀûÀ¸·Î ÀÛ½À´Ï´Ù(¿¹: 120x90 Çȼ¿).
 ·ÎµåµÈ À̹ÌÁöÀÇ Å©±â¸¦ È®ÀÎÇÏ¿© ÀÌ Å©±â ÀÌÇÏÀÎ °æ¿ì, "À̹ÌÁö ¾øÀ½"À¸·Î °£ÁÖÇϰí, ÇØ´ç üũ¹Ú½º¸¦ ÀÚµ¿À¸·Î üũÇÕ´Ï´Ù.
 
 3, µ¥ÀÌÅÍ ¼Ó¼º (data-checkbox-id) »ç¿ë:
 °¢ À̹ÌÁö¿¡ data-checkbox-id ¼Ó¼ºÀ» »ç¿ëÇÏ¿©, À̹ÌÁö°¡ À¯È¿ÇÏÁö ¾ÊÀ» ¶§ Ã¼Å©ÇØ¾ß ÇÒ Ã¼Å©¹Ú½ºÀÇ ID¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
 
 À¯Æ©ºê API »ç¿ë
 ¸¸¾à Á¤È®ÇÏ°Ô À¯Æ©ºê µ¿¿µ»óÀÇ À¯È¿¼ºÀ» °Ë»çÇÏ°í ½Í´Ù¸é,
 YouTube Data API¸¦ ÀÌ¿ëÇÏ¿© µ¿¿µ»ó ID¸¦ È®ÀÎÇÏ°í µ¿¿µ»óÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
 ÇÏÁö¸¸ ÀÌ´Â Ãß°¡ÀûÀÎ API Ű¿Í HTTP ¿äûÀÌ ÇÊ¿äÇϹǷÎ,
 À̹ÌÁö Å©±â °Ë»ç ¹æ½ÄÀÌ ´õ °£´ÜÇϰí Áï°¢ÀûÀÔ´Ï´Ù.
 
 ÀÌ Äڵ带 »ç¿ëÇϸé À¯Æ©ºê µ¿¿µ»óÀÇ ½æ³×ÀÏÀÌ "À̹ÌÁö ¾øÀ½"ÀÏ ¶§ ÇØ´ç üũ¹Ú½º°¡ ÀÚµ¿À¸·Î ¼±Åõ˴ϴÙ.
 
 | 
 |  
|  ̵̧ : 123 | ̵̧
¸ñ·Ï |  | 
 |  |  |