½ÃÀÛÆäÀÌÁö·Î Áñ°Üã±âÃß°¡
·Î±×ÀÎ
ȸ¿ø°¡ÀÔ l Ã⼮üũ l ¸¶ÀÌÆäÀÌÁö l CGIMALL
jQuery 360µµ »óǰ À̹ÌÁö ȸÀü ºä¾î Ç÷¯±×ÀÎ Turntable.js : happycgi
ÀÚ·á½Ç »çÀÌÆ®µî·Ï ·©Å·100 ÇÁ·Î±×·¥¸®ºä °ü¸®ÀÚÃßõÀÚ·á Ãʺ¸°¡À̵å
Ä¿¹Â´ÏƼ
Àüü ÆîÃ帱â
Äü¸Þ´º¸µÅ© jquery , CSS , PHP , Javascript , ¹«·áÆùÆ® , ASP
»ó¼¼°Ë»ö
Ȩ > JAVASCRIPT > javascript ¼Ò½ºÃ¢°í > ÆÛÆ÷¸Õ½º > jQuery 360µµ »óǰ À̹ÌÁö ȸÀü ºä¾î Ç÷¯±×ÀÎ Turntable.js »ó¼¼Á¤º¸
»çÀÌÆ®µî·Ï
Ŭ¶ó¿ìµåű×
javascript
HTML
PHP
2022
Api
ASP
CSS
mysql
jquery
Slide
¸ðµâ
°¶·¯¸®
¸ÞÀϸµ
ÇöÀçÁ¢¼ÓÀÚ ¸í »õ·Î°íħ
jQuery 360µµ »óǰ À̹ÌÁö ȸÀü ºä¾î Ç÷¯±×ÀÎ Turntable.js
¼Ò½ºÅë°èÁ¤º¸ ¿À·ù½Å°í ¹× ¹®ÀÇ
ÇØÇÇÆÀ
³×ƼÁð
Æ®À§ÅÍ·Î º¸³»±â ÆäÀ̽ººÏÀ¸·Î º¸³»±â
¼Ò½ººÐ·ù ÆÛÆ÷¸Õ½º
´Ù¿î·Îµå Ƚ¼ö 2 ȸ
°£´Ü¼³¸í Turntable.js´Â ¿©·¯ °¢µµ¿¡¼­ ÃÔ¿µÇÑ »óǰ À̹ÌÁö¸¦ ¸¶¿ì½º ¶Ç´Â ÅÍÄ¡ ¿òÁ÷ÀÓ¿¡ µû¶ó ÀüȯÇÏ¿© 360µµ ȸÀüó·³ º¸¿©ÁÖ´Â jQuery ±â¹Ý À̹ÌÁö ·ÎÅ×ÀÌÅÍ Ç÷¯±×ÀÎÀÔ´Ï´Ù.
Æò°¡Çϱâ ÈǸ¢ÇÔ ¸Å¿ìÁÁÀ½ ÁÁÀ½ ±¦ÂúÀ½ º¸Åë º°·Î
ȨÆäÀÌÁö¹Ù·Î°¡±â ¼Ò½º´Ù¿î·Îµå µ¥¸ð ¹Ì¸®º¸±â ½ºÅ©·¦Çϱâ


 

# ¶óÀ̼¾½º
 
Turntable.js´Â MIT ¶óÀ̼¾½º·Î Á¦°øµÇ´Â jQuery Ç÷¯±×ÀÎÀÔ´Ï´Ù.
MIT ¶óÀ̼¾½º´Â ºñ±³Àû ÀÚÀ¯·Î¿î ¿ÀǼҽº ¶óÀ̼¾½º·Î, ¶óÀ̼¾½º °íÁö Á¶°ÇÀ» ÁؼöÇÏ¸é °³ÀÎ ÇÁ·ÎÁ§Æ®, »ó¾÷¿ë ÇÁ·ÎÁ§Æ®, À¥»çÀÌÆ® Á¦ÀÛ, ¼îÇθô »óǰ »ó¼¼ ÆäÀÌÁö µî ´Ù¾çÇÑ ¿ëµµ·Î Ȱ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
´Ü, ½ÇÁ¦ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇϱâ Àü¿¡´Â ¹èÆ÷ ÆÄÀÏ ¶Ç´Â GitHub ÀúÀå¼Ò¿¡ Æ÷ÇÔµÈ ¶óÀ̼¾½º ÆÄÀÏÀ» ÇÔ²² È®ÀÎÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
°ø½Ä ¾È³» ±âÁØ ¶óÀ̼¾½º: MIT
Ãâó: jQueryScript / GitHub PolarNotion Turntable.js



# Ư¡ ¹× ¼³¸í
 
Turntable.js´Â »óǰ À̹ÌÁö¸¦ 360µµ ȸÀüÇÏ´Â °Íó·³ º¸¿©ÁÖ±â À§ÇÑ jQuery ±â¹Ý À̹ÌÁö ·ÎÅ×ÀÌÅÍ Ç÷¯±×ÀÎÀÔ´Ï´Ù.
ÀϹÝÀûÀÎ 3D ¸ðµ¨¸µ ¹æ½ÄÀÌ ¾Æ´Ï¶ó, ¿©·¯ °¢µµ¿¡¼­ ÃÔ¿µÇÑ À̹ÌÁöµéÀ» ¼ø¼­´ë·Î ¹èÄ¡ÇÑ µÚ »ç¿ëÀÚÀÇ ¸¶¿ì½º ¿òÁ÷ÀÓ ¶Ç´Â ¼Õ°¡¶ô ÅÍÄ¡ ¿òÁ÷ÀÓ¿¡ µû¶ó À̹ÌÁö¸¦ ¹Ù²ã º¸¿©ÁÖ´Â ¹æ½ÄÀÔ´Ï´Ù.
¿¹¸¦ µé¾î »óǰÀ» 10µµ ¶Ç´Â 15µµ °£°ÝÀ¸·Î ¿©·¯ Àå ÃÔ¿µÇØ µÎ¸é, »ç¿ëÀÚ°¡ Á¿ì·Î µå·¡±×Çϰųª ¸¶¿ì½º¸¦ ¿òÁ÷ÀÏ ¶§ À̹ÌÁö°¡ ¼øÂ÷ÀûÀ¸·Î ÀüȯµÇ¸é¼­ »óǰÀÌ È¸ÀüÇÏ´Â °Íó·³ º¸ÀÔ´Ï´Ù.
¹ÝÀÀÇü À̹ÌÁö ±¸¼ºÀÌ °¡´ÉÇϸç, À̹ÌÁöÀÇ °¡·Î ÆøÀ» 100%·Î ¼³Á¤ÇÏ¿© ÄÁÅ×ÀÌ³Ê Å©±â¿¡ ¸Â°Ô Ãâ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸¶¿ì½º À̵¿ ¹æÇâ¿¡ µû¶ó À̹ÌÁö¸¦ ÀüȯÇÒ ¼ö ÀÖÀ¸¸ç, ±âº»ÀûÀ¸·Î xÃà ¹æÇâ ¿òÁ÷ÀÓÀ» ±âÁØÀ¸·Î ÀÛµ¿ÇÕ´Ï´Ù.
¼³Á¤¿¡ µû¶ó yÃà ¹æÇâ ¶Ç´Â ½ºÅ©·Ñ ±â¹Ý Àüȯµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
À̹ÌÁö ¼ø¼­¸¦ ¹Ý´ë·Î Àç»ýÇÏ´Â reverse ¿É¼Çµµ Áö¿øÇÕ´Ï´Ù.
»óǰ »ó¼¼ÆäÀÌÁö, Á¦Ç° ¼Ò°³ ÆäÀÌÁö, Æ÷Æ®Æú¸®¿À, ÇDZԾ¡±¸·ÀüÀÚÁ¦Ç°·ÀÇ·ù·±â°è ºÎǰ µî ¿©·¯ °¢µµ¿¡¼­ º¸¿©Áà¾ß ÇÏ´Â ÄÜÅÙÃ÷¿¡ ÀûÇÕÇÕ´Ï´Ù.
ºê¶ó¿ìÀú Áö¿ø ¾È³»¿¡´Â Chrome, IE9+, Firefox, Opera, Safari°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.
ÁÖÀÇÇÒ Á¡Àº ÀÌ Ç÷¯±×ÀÎÀÌ ½ÇÁ¦ 3D ·»´õ¸µÀ» ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ¿©·¯ ÀåÀÇ À̹ÌÁö¸¦ ºü¸£°Ô ÀüȯÇÏ´Â ¹æ½ÄÀ̶ó´Â Á¡ÀÔ´Ï´Ù. µû¶ó¼­ ÀÚ¿¬½º·¯¿î 360µµ È¿°ú¸¦ ³»·Á¸é »óǰÀ» ÀÏÁ¤ÇÑ °¢µµ¿Í µ¿ÀÏÇÑ Á¶¸í, µ¿ÀÏÇÑ ¹è°æ¿¡¼­ ÃÔ¿µÇÑ À̹ÌÁö ¼¼Æ®°¡ ÇÊ¿äÇÕ´Ï´Ù.





# »ç¿ë ¹æ¹ý & ¼³Ä¡ ¹æ¹ý


1. ÇÊ¿äÇÑ CSS/JS ÆÄÀÏÀ» ¼³Ä¡ÇÏ°í Æ÷ÇÔ½ÃŰ¼¼¿ä.
  ºê¶ó¿ìÀú ¿ì¼± ¼³Á¤À» ÇÏ·Á¸é ÄÄÆÄÀÏµÈ ÆÄÀÏÀ» ´Ù¿î·ÎµåÇϰí IIFE ½ºÅ©¸³Æ® ¾Õ¿¡ CSS¸¦ Æ÷ÇÔ½ÃŰ¼¼¿ä. 
  Turntable v2´Â jQuery¸¦ ÇÊ¿ä·Î ÇÏÁö ¾Ê½À´Ï´Ù. 

<link rel="stylesheet" href="dist/turntable.css">
<script src="dist/turntable.iife.min.js"></script>


2. npm ÇÁ·ÎÁ§Æ®ÀÇ °æ¿ì, scoped ÆÐŰÁö¸¦ ¼³Ä¡Çϰí Ŭ·¡½º¿Í ½ºÅ¸ÀÏ½ÃÆ®¸¦ °¡Á®¿À¼¼¿ä.

npm install @goboldlyforward/turntable
import { Turntable } from "@goboldlyforward/turntable";
import "@goboldlyforward/turntable/css";

 
3. Á÷Á¢ÀûÀÎ ÀÚ½Ä ¿ä¼Ò¸¦ °¡Áø ÄÁÅ×À̳ʸ¦ »ý¼ºÇÕ´Ï´Ù .
  °¢ ÇÁ·¹ÀÓÀº °ªÀ» °¡Áø ulÁ÷Á¢ÀûÀÎ ¿ä¼Ò¸¦ »ç¿ëÇÕ´Ï´Ù .
  TurntableÀº ÀÌ·¯ÇÑ ¿ä¼Ò¸¦ ÀÚµ¿À¸·Î »ý¼ºÇØ ÁÝ´Ï´Ù. ¶ÇÇÑ °ªÀ» Àоî DOM ¼Ó¼ºÀ» ÅëÇØ °¢ URLÀ» ÇÒ´çÇÕ´Ï´Ù.

<div id="shoeSpin" class="turntable">
  <ul>
    <li data-img-src="images/shoe-angle-01.webp"></li>
    <li data-img-src="images/shoe-angle-02.webp"></li>
    <li data-img-src="images/shoe-angle-03.webp"></li>
    <li data-img-src="images/shoe-angle-04.webp"></li>
    <li data-img-src="images/shoe-angle-05.webp"></li>
    <li data-img-src="images/shoe-angle-06.webp"></li>
  </ul>
</div>


4. ÅÏÅ×À̺íÀ» ÃʱâÈ­ÇÏ¿© Æ÷ÀÎÅÍ ±â¹Ý 360µµ À̹ÌÁö ºä¾î¸¦ »ý¼ºÇÕ´Ï´Ù.

const cameraViewer = new Turntable("#cameraSpin", {
  axis: "x"
});
 
5. »ç¿ë °¡´ÉÇÑ ¸ðµç ±¸¼º ¿É¼Ç.
 
- axis( "x" | "y" | "scroll"): ÇÁ·¹ÀÓ ¼±ÅÃÀÇ ÀÔ·Â ¹æÇâÀ» ¼³Á¤ÇÕ´Ï´Ù. "x"¼öÆò Æ÷ÀÎÅÍ À̵¿, "y"¼öÁ÷ Æ÷ÀÎÅÍ À̵¿ ¶Ç´Â "scroll"ºäÆ÷Æ® ±â¹Ý ÇÁ·¹ÀÓ º¯°æ¿¡ »ç¿ëÇÕ´Ï´Ù.
- reverse( boolean): »óÈ£ ÀÛ¿ë Áß ÇÁ·¹ÀÓ ¼ø¼­¸¦ ¹ÝÀü½Ãŵ´Ï´Ù. ¼Ò½º À̹ÌÁö°¡ ¿øÇÏ´Â UI µ¿ÀÛ°ú ¹Ý´ë ¹æÇâÀ¸·Î ȸÀüÇÏ´Â °æ¿ì¿¡ »ç¿ëÇϽʽÿÀ.
- scrollStart( "top" | "middle" | "bottom"): ½ºÅ©·Ñ ±â¹Ý ȸÀüÀ» À§ÇÑ ºäÆ÷Æ® ¾ÞÄ¿¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº axis¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡¸¸ Àû¿ëµË´Ï´Ù "scroll".
- autorotate( false | number): ÃʱâÈ­ ½Ã ÀÚµ¿ ÇÁ·¹ÀÓ ¼øÈ¯À» ½ÃÀÛÇÕ´Ï´Ù. ÇÁ·¹ÀÓ´ç ¹Ð¸®Ãʸ¦ ¼³Á¤ÇÒ ¼ýÀÚ¸¦ Àü´ÞÇϼ¼¿ä.
- controller( HTMLInputElement | null): ¹üÀ§ ÀÔ·ÂÀ» ºä¾î¿¡ ¿¬°áÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ ¹üÀ§¸¦ º¯°æÇϸé ÇÁ·¹ÀÓÀÌ ¼³Á¤µÇ°í, ºä¾îÀÇ ÇÁ·¹ÀÓÀÌ º¯°æµÇ¸é ¹üÀ§ °ªÀÌ ¾÷µ¥ÀÌÆ® µË´Ï´Ù.
 
 
6. API ¸Þ¼­µå.

// Jump to a specific frame index.
// The class clamps the value to the available frame range.
viewer.setFrame(3);

// Start automatic frame cycling.
// Pass a number to override the configured interval.
viewer.start(200);

// Stop automatic frame cycling.
viewer.stop();

// Recalculate frame sections.
// Call this after layout changes or after a hidden container becomes visible.
viewer.update();

// Remove listeners, observers, timers, and the active frame class.
viewer.destroy();

 

# Âü°í»çÇ×

- Turntable.js´Â ºñ±³Àû ¿À·¡Àü¿¡ °ø°³µÈ Ç÷¯±×ÀÎÀ̹ǷΠÃֽŠÇÁ·ÐÆ®¿£µå ȯ°æ¿¡¼­´Â Á÷Á¢ Å×½ºÆ® ÈÄ Àû¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
- ƯÈ÷ ¸ð¹ÙÀÏ ÅÍÄ¡, ÃֽŠjQuery ¹öÀü, ¹ÝÀÀÇü ·¹À̾ƿô, À̹ÌÁö Áö¿¬ ·Îµù, CDN ȯ°æ µî¿¡¼­´Â ½ÇÁ¦ ¿î¿µ ÆäÀÌÁö¿¡¼­ Á¤»ó ÀÛµ¿ ¿©ºÎ¸¦ ¹Ýµå½Ã È®ÀÎÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
- ÆÄÀÏ Å©±â ¾È³» ±âÁØÀ¸·Î jQueryScript ÆäÀÌÁö¿¡´Â 2.59MB·Î Ç¥½ÃµÇ¾î ÀÖ½À´Ï´Ù. ½ÇÁ¦ Àû¿ë ½Ã¿¡´Â ¿¹Á¦ À̹ÌÁö³ª µ¥¸ð ÆÄÀϱîÁö Æ÷ÇÔµÈ ¿ë·®ÀÏ ¼ö ÀÖÀ¸¹Ç·Î, ¿î¿µ »çÀÌÆ®¿¡´Â ÇÊ¿äÇÑ JS, CSS, À̹ÌÁö ÆÄÀϸ¸ ¼±º°Çؼ­ ¾÷·ÎµåÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
- ÀÌ Ç÷¯±×ÀÎÀº 360µµ ȸÀü È¿°ú ÀÚüº¸´Ù À̹ÌÁö ǰÁú°ú ÃÔ¿µ ¹æ½ÄÀÌ ´õ Áß¿äÇÕ´Ï´Ù. »óǰÀ» ÀÏÁ¤ÇÑ °£°ÝÀ¸·Î ÃÔ¿µÇÏÁö ¾ÊÀ¸¸é ȸÀüÀÌ ºÎÀÚ¿¬½º·´°Ô º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù.
- ¼îÇθô »óǰ »ó¼¼ÆäÀÌÁö¿¡ Àû¿ëÇÒ °æ¿ì, ÃÖ¼Ò 12Àå ÀÌ»ó À̹ÌÁö¸¦ ÁغñÇÏ´Â °ÍÀÌ ÁÁ°í, ´õ ºÎµå·¯¿î ȸÀüÀ» ¿øÇÑ´Ù¸é 24Àå, 36Àå ÀÌ»óÀÇ À̹ÌÁö ¼¼Æ®¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
- À̹ÌÁö ¼ö°¡ ¸¹¾ÆÁú¼ö·Ï ·Îµù ¼Óµµ¿¡ ¿µÇâÀ» ÁÙ ¼ö ÀÖÀ¸¹Ç·Î, À̹ÌÁö ¿ë·® ÃÖÀûÈ­°¡ ÇÊ¿äÇÕ´Ï´Ù.
- WebP Çü½Ä »ç¿ë, ½æ³×ÀÏ ¾ÐÃà, lazy loading Àû¿ë, CDN »ç¿ë µîÀ» ÇÔ²² °í·ÁÇÏ¸é »ç¿ëÀÚ Ã¼°¨ ¼Óµµ¸¦ °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù.
- Àû¿ë Ãßõ ºÐ¾ß´Â ¼îÇθô »óǰ »ó¼¼ÆäÀÌÁö, Á¦Ç° ¼Ò°³ ÆäÀÌÁö, ±â°è Àåºñ ¼Ò°³, °¡±¸·ÀÎÅ׸®¾î Á¦Ç° ¼Ò°³, ÇDZԾÒǰ ¼Ò°³, ÀÚµ¿Â÷·ºÎǰ ¼Ò°³, Àü½Ãǰ ¼Ò°³ ÆäÀÌÁö µîÀÔ´Ï´Ù.

³×ƼÁð ÀÇ°ß   ÀÌ¿ëÇϽŠÀÚ·áÀÇ Èı⸦ ÀÚÀ¯·Ó°Ô ÀÛ¼ºÇϼ¼¿ä. (»ó¾÷ÀûÀÎ ±¤°í ¹× µµ¹è¼º ±Û µîÀº »çÀüÅ뺸¾øÀÌ »èÁ¦µÉ ¼ö ÀÖ½À´Ï´Ù.)
³»¿ë ¾ÆÀ̵ð Àǰ߳²±â±â
µî·ÏµÈ ÀǰßÀÌ ¾ø½À´Ï´Ù.
1
À̸§
³»¿ë
:³×¸Â¾Æ¿ä: :È­³ª´Â±º¿ä: :Àá¿Í: :¿ì¿ïÇØ: :À̰ǾƳÄ: :¿ÕÇÏÇÏ: ¿Õ¿ôÀ½~ ³î·¥~
Æò°¡Çϱâ ÈǸ¢ÇÔ ¸Å¿ìÁÁÀ½ ÁÁÀ½ ±¦ÂúÀ½ º¸Åë º°·Î
µµ¹è¹æÁöŰ
 40144663 º¸ÀÌ´Â µµ¹è¹æÁö۸¦ ÀÔ·ÂÇϼ¼¿ä.