ÀÏÁ¤ÇÑ °¢µµ¸¸Å­ ¿øÇüÀ̵¿ go to ¿øÇüÀ¸·Î À̵¿Çϱâ


½ÇÇà

°è¼Ó ·¹À̾ ȸÀü ½ÃŰÁö ¾Ê°í ƯÁ¤ÇÑ °¢µµ·Î ·¹À̾ ȸÀü½ÃŰ±â ¹æ¹ýÀÔ´Ï´Ù.

¸ÕÀú °è¼Ó À̵¿ÇÏ´Â ·¹À̾îÀ̵¿ Á¤º¸¸¦ ÁöÁ¤ÇÏ´Â ÇÔ¼ö¿¡¼­ À̵¿½Ãų °¢µµ¸¦ ÁöÁ¤ÇÏ´Â ÀÎÀÚ¸¦ ³Ö¾î ÁÝ´Ï´Ù.

function initCircleTo() {

  circleToLayer = new Array();

  if(n4) { 
    circleToLayer[0] = 1 //°¢ ·¹À̾îµéÀÇ À̵¿ °£°Ý½Ã°£
    circleToLayer[1] = new circleToSet(document.D1,2,100,100,200,100,4,1,90)
  }
  else if(e4) {
    circleToLayer[0] = 1 //°¢ ·¹À̾îµéÀÇ À̵¿ °£°Ý½Ã°£
    circleToLayer[1] = new circleToSet(document.all.D1,2,100,100,200,100,4,1,90)
  }
}
À§ÀÇ ±½Àº ±ÛÀÚ 4, 1Àº óÀ½ ·¹À̾ ¹èÄ¡ÇÒ ¶§, ȸÀü¿¡¼­ ¸Ç À§¿¡ ¿À°ÔÇϱâ À§ÇØ 360-360/(4*1)·Î 270µµ¸¦ ÁöÁ¤ Çß½À´Ï´Ù. ±×·¡¼­ ½ÇÇàÇÏ¸é ½Ã°è¹æÇ⠾Ʒ¡·Î À̵¿À» ½ÃÀÛÇÕ´Ï´Ù. 4, 3 À» ÁöÁ¤ÇÑ´Ù¸é 90µµ·Î ¹èÄ¡°¡ µÇ¾î ȸÀü¿¡¼­ ¸Ç ¾Æ·¡¿¡ À§Ä¡ÇÕ´Ï´Ù. ±×·¡¼­, óÀ½ °¢µµ¸¦ ȸÀü ½Ã۸é À§·Î ÁøÇàÇÕ´Ï´Ù. µÎ¹øÀç ±½Àº ±ÛÀÚ 90Àº Çѹø ȸÀü½Ãų °¢µµÀÔ´Ï´Ù. ¿©±â¼­ ÁöÁ¤ÇÏ´Â °¢µµ¸¸Å­ ȸÀüÀ» ÇÕ´Ï´Ù.

³ª¸ÓÁö´Â °è¼Ó ·¹À̾ ȸÀü½ÃŰ´Â °Í°ú °°½À´Ï´Ù. ȸÀü Áß½ÉÀ» left ÁÂÇ¥ 200px, top ÁÂÇ¥ 100px¿¡¼­ leftÀ̵¿ÆøÀ» 100px, topÀ̵¿ÆøÀ» 100px·Î ÁöÁ¤°¢µµ¿¡¼­ 2¹èÀÇ °Å¸®·Î À̵¿Ç϶ó°í ÁöÁ¤À» ÇÕ´Ï´Ù.

±×¸®°í À̵é Á¤º¸¸¦ ÁöÁ¤ÇÏ´Â ÇÔ¼ö¿¡¼­ °¢µµ¿Í À̵¿¾çÀ» ÆÇ´ÜÇϱâ À§ÇÑ ¸î °¡ÁöÀÇ º¯¼ö¸¦ Ãß°¡ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.

function circleToSet(layer,angleIns,holizontalLength,verticalLength,circleLeftCenter,circleTopCenter,totalLayer,layerOrder,circleTotal) { 

  this.layer = layer
  this.moveHol = holizontalLength
  this.moveVer = verticalLength
  this.moveAngleIns = angleIns
  this.moveAngle = 360-(360/totalLayer*layerOrder) 

  this.moveCircleTotal = circleTotal
  this.moveAngleFirst = 360-(360/totalLayer*layerOrder)
  this.circleStop = false

  if(n4) { 
    layer.left = circleLeftCenter + holizontalLength * Math.cos(this.moveAngle*Math.PI/180) 
    layer.top = circleTopCenter + verticalLength * Math.sin(this.moveAngle*Math.PI/180) 

    this.centerX = layer.left - holizontalLength * Math.cos(this.moveAngle*Math.PI/180) 
    this.centerY = layer.top - verticalLength * Math.sin(this.moveAngle*Math.PI/180) 
  }
  else if(e4) {
    layer.style.pixelLeft = circleLeftCenter + holizontalLength * Math.cos(this.moveAngle*Math.PI/180) 
    layer.style.pixelTop = circleTopCenter + verticalLength * Math.sin(this.moveAngle*Math.PI/180) 

    this.centerX = layer.style.pixelLeft - holizontalLength * Math.cos(this.moveAngle*Math.PI/180) 
    this.centerY = layer.style.pixelTop - verticalLength * Math.sin(this.moveAngle*Math.PI/180) 
  }
}
this.moveCircleTotal = circleTotal ´Â À̵¿½Ãų °¢µµÀÔ´Ï´Ù. ¿©±â¼­´Â 90À¸·Î ÁöÁ¤À» Çß½À´Ï´Ù.
this.moveAngleFirst = 360-(360/totalLayer*layerOrder)´Â 90µµ¸¦ À̵¿ÇÏ°í ´ÙÀ½ 90µµ¸¦ À̵¿½Ã »ç¿ëÇϴ óÀ½ ÁöÁ¤°¢µµ¸¦ ÀúÀåÇÕ´Ï´Ù.
this.circleStop = false ´Â ¿©·¯ ·¹À̾ ´Ù¸¥ °¢µµ·Î ȸÀü½Ãų ¶§, °¢ ·¹À̾ ÁöÁ¤°¢µµ·Î ȸÀü ÇßÀ¸¸é ±× ·¹À̾îÀÇ À̵¿À» ¸ØÃߴµ¥ »ç¿ëÇÕ´Ï´Ù.

ÀÌ 3°¡Áö°¡ °è¼Ó ·¹À̾ À̵¿½ÃŰ´Â ÇÔ¼ö¿¡¼­ ƯÁ¤ °¢µµ¸¸Å­¸¸ ȸÀü½Ã۴µ¥ ÇÊ¿äÇÑ Ãß°¡µÈ °ÍÀÔ´Ï´Ù.

À̵é Á¤º¸µéÀ» ÂüÁ¶ÇÏ¿© ·¹À̾ À̵¿½ÃŰ´Â ÇÔ¼öÀÔ´Ï´Ù.

function circleTo() { 

  for(var i=1; i < circleToLayer.length; i++) { 

  if(n4) {
    if(!circleToLayer[i].circleStop) {
      circleToLayer[i].layer.left = circleToLayer[i].centerX + circleToLayer[i].moveHol * Math.cos(circleToLayer[i].moveAngle*Math.PI/180) 
      circleToLayer[i].layer.top = circleToLayer[i].centerY + circleToLayer[i].moveVer * Math.sin(circleToLayer[i].moveAngle*Math.PI/180) 

      if(circleToLayer[i].moveAngleIns < 0) {
        if(circleToLayer[i].moveAngle < circleToLayer[i].moveAngleFirst - circleToLayer[i].moveCircleTotal - circleToLayer[i].moveAngleIns) {
	  circleToLayer[i].circleStop = true; 
	  circleToLayer[i].moveAngle %=  360 
	  circleToLayer[i].moveAngleFirst = circleToLayer[i].moveAngle
	}
      }
      else {
	if(circleToLayer[i].moveAngle > circleToLayer[i].moveCircleTotal + circleToLayer[i].moveAngleFirst - circleToLayer[i].moveAngleIns ) { 
	  circleToLayer[i].circleStop = true; 
	  circleToLayer[i].moveAngle %=  360 
	  circleToLayer[i].moveAngleFirst = circleToLayer[i].moveAngle
	}
      }
      circleToLayer[i].moveAngle += circleToLayer[i].moveAngleIns 
    }
  }
  else if(e4) {
    if(!circleToLayer[i].circleStop) {
      circleToLayer[i].layer.style.pixelLeft = circleToLayer[i].centerX + circleToLayer[i].moveHol * Math.cos(circleToLayer[i].moveAngle*Math.PI/180) 
      circleToLayer[i].layer.style.pixelTop = circleToLayer[i].centerY + circleToLayer[i].moveVer * Math.sin(circleToLayer[i].moveAngle*Math.PI/180) 

      if(circleToLayer[i].moveAngleIns < 0) {
	if(circleToLayer[i].moveAngle < circleToLayer[i].moveAngleFirst - circleToLayer[i].moveCircleTotal - circleToLayer[i].moveAngleIns) {
	  circleToLayer[i].circleStop = true; 
	  circleToLayer[i].moveAngle %=  360 
	  circleToLayer[i].moveAngleFirst = circleToLayer[i].moveAngle 
	}
      }
      else {
	if(circleToLayer[i].moveAngle > circleToLayer[i].moveCircleTotal + circleToLayer[i].moveAngleFirst - circleToLayer[i].moveAngleIns ) { 
	  circleToLayer[i].circleStop = true; 
	  circleToLayer[i].moveAngle %=  360 
	  circleToLayer[i].moveAngleFirst = circleToLayer[i].moveAngle
	}
      }
      circleToLayer[i].moveAngle += circleToLayer[i].moveAngleIns 
    }
  }
 } 
 moveCircle_ID = setTimeout("clearTimeout(moveCircle_ID); circleTo()", circleToLayer[0]) 
}
ÁöÁ¤µÈ °¢µµ¸¸Å­ ·¹À̾ ȸÀü ½ÃŰ´Â ÇÔ¼öÀÔ´Ï´Ù. ±×¸®°í °¢ ·¹À̾ À̵¿ÀÌ ³¡³µÀ¸¸é circleToLayer[i].circleStop = true; ·Î ÁöÁ¤ µË´Ï´Ù. ·¹À̾ ÁöÁ¤ÇÑ °¢µµ ¸¸Å­À̵¿À» ÇßÀ¸¸é À̵¿À» ¸ØÃä´Ï´Ù. ±×·¡¼­ µÎ¹øÀç·Î ·¹À̾ 90µµ ȸÀü½Ã۱â À§Çؼ­ circleToLayer[i].circleStop¸¦ óÀ½»óÅÂÀÎ false¸¦ ÁöÁ¤ÇØ ÁÖ¾î¾ß µÎ¹øÀçµµ À̵¿ÇÕ´Ï´Ù.
function go() {
  for(var i=1; i < circleToLayer.length; i++) { 
      circleToLayer[i].circleStop = false
  }
  circleTo()
}
--
<a href="javascript:go()">½ÇÇà</a>
·Î circleToLayer[i].circleStop = false·Î ¸ðµÎ ÁöÁ¤À» ÇÏ°í °¢µµ ¸¸Å­ ·¹À̾ ȸÀü½ÃŰ´Â ÇÔ¼ö circleTo()¸¦ È£ÃâÇÕ´Ï´Ù.

¿©·¯ ·¹ÀÌ¾î ´Ù¸¥°¢µµ·Î ȸÀüÇϱâ



TOP                back                TOP