?
Solved

Unable to see Zoom in images after click on the thumbnail images

Posted on 2007-04-05
3
Medium Priority
?
225 Views
Last Modified: 2010-04-03
Hi, experts

I have the following code that import external images. First, it will display small images and user can see zoom in images when click on small images..... The problem is when click on small image that zoom in image is not showing up [ function buttonClick() ]. Please any suggestion welcome. Thanks

Code

var _loc1 = this;
//
function loadMe() {
      myX = 62;
      myY = 125;
      gap = 105;
      gap2 = 0.66;
      max = 4;
      counter = 0;
      var ScrollMovie:MovieClip = _loc1.createEmptyMovieClip("ScrollMovie", 1);
      for (n=1; n<howMany; n++) {
            mc = ScrollMovie.createEmptyMovieClip("myTarget"+n, 20+n);
            picture = "netblue/"+projects[n]+".jpg";
            eval("ScrollMovie.myTarget"+n).loadMovie(picture);
            //mcLoader.loadClip(picture, eval("ScrollMovie.myTarget"+n));
            if (counter>max) {
                  counter = 0;
                  myY = myY+gap;
            }
            // end if                                                            
            mc._x = myX+gap*counter;
            mc._y = myY*gap2;
            trace("counter:"+counter);
            ++counter;
      }
      //
      // end of for
      mask_mc = _loc1.attachMovie("bg", "mask_mc", _loc.getNextHighestDepth());
      mask_mc._x = bg._x;
      mask_mc._y = bg._y;
      ScrollMovie.setMask(mask_mc);
      if (howMany>20) {
            trace("Too many!!");
            //for (i=20; i>20; i++) {
            trace("Trace n = "+n);
            //}
      }
}
// End of the function
function buildMenu() {
      myX = 62;
      myY = 125;
      gap = 105;
      gap2 = 0.66;
      max = 4;
      counter = 0;
      for (i=1; i<howMany; i++) {
            mc = ScrollMovie.attachMovie("button", "button"+i, 50+i);
            // Add the following to make rollOver works
            mc.btn.onRollOut = buttonOut;
            mc.btn.onRollOver = buttonOver;
            mc.btn.onRelease = buttonClick;
            trace("Menu list --   "+i);
            mc.i = i;
            _loc1.myName = i;
            _loc1.myName = _loc1.projects[i];
            mc.person.text = _loc1.myName;
            trace("myName --   "+myName);
            _loc1.n = i;
            if (counter>max) {
                  counter = 0;
                  myY = myY+gap;
            }
            // end if                                                            
            mc._x = myX+gap*counter;
            mc._y = myY*gap2;
            trace("counter:"+counter);
            ++counter;
      }
      // end of for
}
// End of the function
function buttonOver() {
      _loc1 = this._parent._parent;
      trace("which one is roll over now --  "+this._parent);
      this._parent.gotoAndStop(6);
      _loc1.myName = _loc1.projects[i];
      mc = _loc1["myTarget"+this._parent.i];
      mc._xscale = mc._yscale=120;
      prev_width = this._parent._width;
      this._parent._xscale = this._parent._yscale=120;
      after_width = this._parent._width;
      this._parent.buffer = (after_width-prev_width)/2;
      this._parent._x -= this._parent.buffer;
      this._parent._y -= this._parent.buffer;
      mc._x -= this._parent.buffer;
      mc._y -= this._parent.buffer;
      mc.swapDepths(120);
      this._parent.swapDepths(121);
}
// End of the function
function buttonOut() {
      mc = _loc1["myTarget"+this._parent.i];
      mc._xscale = mc._yscale=100;
      this._parent._x += this._parent.buffer;
      this._parent._y += this._parent.buffer;
      mc._x += this._parent.buffer;
      mc._y += this._parent.buffer;
      this._parent._xscale = this._parent._yscale=100;
      this._parent.gotoAndStop(1);
}
function buttonClick() {
      _loc1 = this._parent._parent;
      //
      _loc1.createEmptyMovieClip("zoomMC12", 9999);
      _loc1.zoomMC12._x = 322;
      _loc1.zoomMC12._y = 222;
      trace("Click on button  "+this);
      zoomMC = _loc1.zoomMC12.createEmptyMovieClip("myTarget", 9999);
      trace(" import Project bigger image n = "+this._parent.i);
      zoomPicture = "netblue/zoom/"+String(_loc1.projects[this._parent.i])+".jpg";
      //After roll over status
      for (i=1; i<20; i++) {
            mc._alpha = 30;
      }
      ///////////////////////////////////////////////
      _loc1.mcLoader.loadClip(zoomPicture, zoomMC);
      _loc1.zoomMC12.onPress = function() {
            unloadMovie(this);
            unloadMovie(whiteOutBG);
      };
}
_loc1.upStatus = 0;
//
var myListener = new Object();
myListener.onLoadInit = function(target_mc) {
      this.imageborder = 9;
      target_mc._x = -(target_mc._width/2);
      target_mc._y = -(target_mc._height/2);
      trace("Picture width  "+target_mc._width);
      //Load white BG
      _loc1.attachMovie("whiteOutBG", "whiteOutBG", 9998);
      _loc1.whiteOutBG._width = target_mc._width+2*this.imageborder;
      _loc1.whiteOutBG._height = target_mc._height+2*this.imageborder;
      _loc1.whiteOutBG._x = 322;
      _loc1.whiteOutBG._y = 222;
};
var mcLoader = new MovieClipLoader();
mcLoader.addListener(myListener);
//
//Scroller
increment = 20;
downLimit = -112;
upLimit = 0;
down.onPress = function() {
      if (ScrollMovie._y>downLimit) {
            ScrollMovie._y = ScrollMovie._y-increment;
      }
};
up.onPress = function() {
      if (ScrollMovie._y<upLimit) {
            ScrollMovie._y = ScrollMovie._y+increment;
      }
};
// End of the function
#include "netblue/netblueList.as"
var scrolling = 0;
var howMany = projects.length;
var n = 1;
loadMe();
buildMenu();
var myName;
stop();
0
Comment
Question by:Brian Lin
  • 2
3 Comments
 
LVL 34

Accepted Solution

by:
Aneesh Chopra earned 2000 total points
ID: 18856520
just replace "buttonClick" function code with the following:
I marked the code lines I have edited

==============
function buttonClick()
{
      _loc1 = this._parent._parent._parent; // editted
      //
      _loc1.createEmptyMovieClip("zoomMC12", 9999);
      _loc1.zoomMC12._x = 322;
      _loc1.zoomMC12._y = 222;
      trace("Click on button  "+this);
      trace("_loc1:"+_loc1);

      zoomMC = _loc1.zoomMC12.createEmptyMovieClip("myTarget", 9999);
      zoomPicture = "netblue/zoom/"+String(_loc1.projects[this._parent.i])+".jpg";// editted
      //After roll over status
      for (i=1; i<20; i++)
      {
            mc._alpha = 30;
      }
      ///////////////////////////////////////////////
      _loc1.mcLoader.loadClip(zoomPicture, zoomMC);
      _loc1.zoomMC12.onPress = function()
      {
            unloadMovie(this);
            unloadMovie(whiteOutBG);
      };
}
=================

- Aneesh Chopra
0
 

Author Comment

by:Brian Lin
ID: 18859781
ahh, cool,.... Thanks, Aneesh... so, the layer did not point deep enough :) I think I found another small problem when roll off small image but i will try to fix it myself and if not, i will post another Q

Thanks a lot
0
 

Author Comment

by:Brian Lin
ID: 18862572
Hi, Aneesh

How are you? I found a small problem but I could not really solve it by my self.... I have created a question at EE and could you take a look if you have time?

http://www.experts-exchange.com/Software/Photos_Graphics/Web_Graphics/Macromedia_Flash/Q_22495945.html

Thanks for helping
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is a very simple example to help those of you who are still migrating from AS2 to AS3 understand the redesigned event model in AS3. In AS2.0, event functions (that is, the function to be performed when an event is fired) were stored as a pro…
I have found that much of my time doing support ends up being a constant repetition of the same steps to different people.  Early on I stated using web pages with Frequently Asked Questions (FAQs) to alleviate most of the burden.  Sometimes this jus…
The goal of the tutorial is to teach the user how to live broadcast using Flash Media Live Encoder and connecting it to YouTube to broadcast. Log into your Youtube account, choose live stream settings, start live stream from Flash Media Live Enc…
The goal of the tutorial is to teach the user how to select which audio input to use. Once you have an audio input plugged into the laptop or computer, you will go into the audio input settings and choose which audio input you want to use.
Suggested Courses

601 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question