Comunidad de diseño web y desarrollo en internet online

ayuda con efecto tipo hojas

Citar            
MensajeEscrito el 18 May 2007 06:25 pm
hola tengo este efecto

bueno mi problema he inquietud es q si se dan cuenta tienes q arrastrar para q de vuelta la hojas.
y quisiera saber q modificar en el codigo para q en vez de tener q arrastrar solo tenga q hacer click para q de la vuelta automaticamente.
no se si me dejo entender. se agradece la ayuda
saludos

el codigo el sgte (un poco largo :) )

Código :

this.attachMovie ("cornerButton", "RButton", 11);
with (RButton) {
   _x = pageWi;
   _y = -pageWi;
}
this.attachMovie ("cornerButton", "LButton", 12);
with (LButton) {
   _x = -pageWi;
   _y = -pageWi;
   _xscale = -100;
}
//
//
// Build pages for first time
pageInit (flipPage, dir);
// Drop down to appear centered
_y+=pivotY;
//
//
//
//
//
// _____________________B U I L D   F U N C T I O N S
//
// Create a left-aligned page-sized solid fill raised one pagewidth
function makePage (targ, xQuadrant) {
   with (targ) {
      beginFill(pageColor, 100);
      moveto(0, -pageWi);
      lineto(0, -pageWiHi);
      lineTo(xQuadrant*pageWi, -pageWiHi);
      lineTo(xQuadrant*pageWi, -pageWi);
      endFill();
   }
}
//
//
// Create a left-aligned page-sized shadow gradient raised one pagewidth
// Shade is used to add depth to stationary pages
function makeShade (targ, xQuadrant) {
   with (targ) {
      // Defines gradient used as shadow overlay
      var colors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
      var alphas = [      40,       25,       15,        5,        0,        1,        6];
      var ratios = [       0,        1,       17,       51,       89,      132,      255];
      var matrix = { matrixType:"box", x:0, y:pageWi, w:xQuadrant*pageWi, h:pageHi, r:0};
      beginGradientFill( "linear", colors, alphas, ratios, matrix );
      moveto(0, -pageWi);
      lineto(0, -pageWiHi);
      lineTo(xQuadrant*pageWi, -pageWiHi);
      lineTo(xQuadrant*pageWi, -pageWi);
      endFill();
   }
}
//
//
// create a bottom-left aligned shadow gradient
// for animated shadows
function makeShadow (targ, xQuadrant) {
   with (targ) {
      // Defines gradient used as shadow overlay
      var colors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
      var alphas = [      40,       25,       15,        5,        0,        1,        6];
      var ratios = [       0,        1,       17,       51,       89,      132,      255];
      var maxLength = Math.sqrt((pageWi*pageWi)+(pageWIHi*pageWiHi));
      var matrix = { matrixType:"box", x:0, y:-maxLength, w:xQuadrant*pageWi, h:maxLength-pageWi, r:0};
      beginGradientFill( "linear", colors, alphas, ratios, matrix );
      moveto(0, -pageWi);
      lineto(0, -maxLength);
      lineto(xQuadrant*pageWi, -maxLength);
      lineTo(xQuadrant*pageWi, -pageWi);
      endFill();
   }
}
//
//
// Place Stationary Pages
function setStationary() {
// Place the "S"tationary "L"eft "P"age
createEmptyMovieClip("SLPage", 1);
   if (flipPage!=1.5) {
      makePage (SLPage, -1)
      SLPage.attachMovie("print"+(flipPage-1.5), "Print", 1);
      with (SLPage.Print) {
         _x = -pageWi/2;
         _y = -pivotY;
      }
   }
   // Place the "S"tationary "R"ight "P"age
createEmptyMovieClip("SRPage", 2);
   if (flipPage!=maxPages-.5){
      makePage (SRPage, 1)
      SRPage.attachMovie("print"+(flipPage+1.5), "Print", 1);
      with (SRPage.Print) {
         _x = pageWi/2;
         _y = -pivotY;
      }
   }
   // Place shade on page not being revealed
   var targ = dir>0 ? SLPage : SRPage;
   targ.createEmptyMovieClip("Shade", 2);
   makeShade(targ.Shade, -dir);
}
// 
// 
// Place the Flipping Pages
function setFlipping() {
   var targ;
   // Place the "F"lipping "T"op "P"age
   createEmptyMovieClip("FTPage", 3);
   makePage (FTPage, dir)
   with (FTPage) {
      attachMovie("print"+(flipPage-dir*.5), "Print", 1);
      with (Print) {
         _x = dir*pageWi/2;
         _y = -pivotY;
      }
   }
   FTPage.createEmptyMovieClip("Shade", 2);
   makeShade(FTPage.Shade, dir);
   // Place the "F"lipping "B"ottom "P"age
   createEmptyMovieClip("FBPage", 4);
   makePage (FBPage, -dir)
   FBPage.attachMovie("print"+(flipPage+dir*.5), "Print", 1);
   with (FBPage.Print) {
      _x = -dir*pageWi/2;
      _y = -pivotY;
   }
   FBPage._rotation = dir*90;
}
// 
// 
// Creates Shadows which follow edge of transition
function setShadows() {
   var targ;
   // Place shadow on the "F"lipping page
   this.createEmptyMovieClip("FShadow", 5);
   makeShadow(FShadow, -dir);
   FShadow._rotation = dir*45;
   // Place shadow on the "S"tationary page
   this.createEmptyMovieClip("SShadow", 6);
   makeShadow(SShadow, dir);
   SShadow._rotation = dir*45;
}
// 
// 
// Create Masks to hide everything
function makeMasks() {
   // Create mask for Flipping Bottom Page Mask
   this.createEmptyMovieClip("FBPageMask", 7);
   with (FBPageMask) {
      beginFill(0x005500, 100);
      lineto(pageWiHi, -PageWiHi);
      curveto(0, -2*PageWiHi, -pageWiHi, -pageWiHi);
      endFill();
   }
   // Create mask for Flipping Top Page
   FBPageMask.duplicateMovieClip("FTPageMask", 8);
   // Create mask for Shadow on the Flipping Page
   this.createEmptyMovieClip("FShadowMask", 9);
   makePage (FShadowMask, -dir);
   FShadowMask._rotation = dir*90;
   // Create mask for Shadow on Stationary Page
   this.createEmptyMovieClip("SShadowMask", 10);
   makePage(SShadowMask, dir);
   FBPage.setMask(FBPageMask);
   FTPage.setMask(FTPageMask);
   FShadow.setMask(FShadowMask);
   SShadow.setMask(SShadowMask);
}
//
//
// Hide pages before page1 and after Last Page
function limitBook () {
   if (flipPage==1.5) {
      SLPage._visible = 0;
      LButton._visible = 0;
      SShadow._visible = 0;
      if (dir==1) {
         FTPage.Shade._alpha = 67;
         SShadow._visible = 1;
      }else {
         FShadow._alpha = 67;
      }         
   } else if (flipPage==maxPages-.5) {
      SRPage._visible = 0;
      RButton._visible = 0;
      SShadow._visible = 0;
      if (dir==-1) {
         FTPage.Shade._alpha = 67;
         SShadow._visible = 1;
      } else {
         FShadow._alpha = 67;
      }
   }      
}
// 
// 
// How to position all pages needed for a page flip
// calls all functions listed above
function pageInit (cp, d) {
   flipPage = cp;
   dir = d;
   //trace ("flip page = "+flipPage+" dir = "+dir);
   setStationary();
   setFlipping();
   setShadows();
   makeMasks();
   limitBook ();
}
// 
//
//
//
//
//__________________F L I P P I N G   F U N C T I O N S
//
// How to adjust position of flipping page
// based on a value between 0 and 1
function flip(curVal) {
   var rot = dir*45*curVal;
   FBPageMask._rotation = FTPageMask._rotation = -rot;
   FBPage._rotation = FShadowMask._rotation = (dir*90)-rot*2;
   FShadow._rotation = SShadow._rotation=(dir*45)-rot;
}
//
//
// how to determine position of flipping page
// returns a value between 0 and 1
// zero being no-flip and one being full-flip
function getPageRatio () {
   if (dragging) {
      // if dragging page position is determined by mouse position
      // the 20 helps advance the turning page when the button is pressed
      pageRatio = -dir*(_xmouse-startX-dir*20)/(2*pageWi);
   } else {
      // if not dragging; auto increment page towards final position
      pageRatio>2/3 ? pageRatio += autoStep : pageRatio -= autoStep;
   }
   // if out of bounds 
   if (pageRatio<=0) {
      pageRatio = 0;
      if (!dragging) {
         flipDone();
      }
   } else if (pageRatio>=1) {
      pageRatio = 1;
      if (!dragging) {
         flipDone();
      }
   }
   return (pageRatio);
}
// 
//
//
//
//
//_____________C O N T R O L I N G   F U N C T I O N S
//
// What to do when you press a page flipping button
function startFlip (dir) {
   pageInit (curPage+dir, dir);
   startX = dir*pageWi;
   dragging = true;
   RButton._alpha=0;
   Lbutton._alpha=0;
   this.onEnterFrame = function () {
      flip(getPageRatio());
   }
}
// 
//
// what to do when page is released
function flipRelease () {
   dragging = false;
   if (pageRatio>2/3) {
      curPage+=2*dir;
   }
}
//
//
// What to do when pages are done flipping
function flipDone () {
   this.onEnterFrame = null;
   RButton._alpha = 100;
   LButton._alpha = 100;
   if (curPage!=.5){
      LButton._visible = 1;      
   }
   if (curPage!=maxPages+.5){
      RButton._visible = 1;
   }
   // Delete hidden pages to save resources
   if (pageRatio==0) {
      FShadow.removeMovieClip();
      FShadowMask.removeMovieClip();
      SShadow.removeMovieClip();
      SShadowMask.removeMovieClip();
      FBPage.removeMovieClip();
      FBPageMask.removeMovieClip();
      if (dir==1) {
         SRPage.removeMovieClip();
      } else {
         SLPage.removeMovieClip();
      }         
   } else {
      FTPage.removeMovieClip();
      if (dir==-1) {
         SRPage.removeMovieClip();
      } else {
         SLPage.removeMovieClip();
      }
   }
   FTPageMask.removeMovieClip();
}
//
//
// assign functions to button events
LButton.onPress = function() {
   startFlip (-1);
}
LButton.onReleaseOutside = function () {
   flipRelease();
}
LButton.onRelease = function () {
   flipRelease();
}
RButton.onPress = function() {
   startFlip (1);
}
RButton.onReleaseOutside = function () {
   flipRelease();
}
RButton.onRelease = function () {
   flipRelease();
}

Por johndoe20

138 de clabLevel

1 tutorial

 

la habitacion de al lado

msie
Citar            
MensajeEscrito el 08 Ene 2009 07:11 pm
Hola, yo tengo la misma duda. Y otra más. Cómo puedo alinear mi página, ya le di el tamaño que quiero pero cuando lo veo carga muy arriba a la izquierda y no está centrado por más que ya le puse el código de pivot en _x y en _y, AYÚDA POR FAVOR es urgente!! de vida o muerte!! :shock:

Por furrisima

16 de clabLevel



 

Lima

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.