Posted by admin | Posted in Miniature | Posted on 18-01-2009
Tags: animation, art, blog, miniature toy story figures, photography, toys
Looking For Miniature Toy Story ? Then This is Where You Want to Be
![]() |
![]() Soldier Story USMC US Marines Goggles 1 6 Toys Bbi Dragon Miniature GI joe $4.99 Time Remaining: 1h 13m Buy It Now for only: $4.99 |
![]() Toys City Russian Red Army Tunic 1 6 Toys Dragon Bbi Soldier Story Miniature $5.99 Time Remaining: 1h 16m Buy It Now for only: $5.99 |
![]() DID Multicam Range Vest 1 6 Toys Bbi Dragon Soldier Story Miniature GI joe 12 $5.99 Time Remaining: 1h 31m Buy It Now for only: $5.99 |
![]() Toys City WWII German Y Strap 1 6 Scale Dragon DID Soldier Story Bbi Miniature $2.99 Time Remaining: 1h 42m Buy It Now for only: $2.99 |
![]() Soldier Story USMC US Marine Belt n Pouch 1 6 Toys Bbi Dragon Miniature GI joe $4.99 Time Remaining: 2h 14m Buy It Now for only: $4.99 |
![]() Did Halder WWII German Smock 1 6 Toys 3R Bbi Dragon Soldier Story Miniature Joe $6.99 Time Remaining: 2h 16m Buy It Now for only: $6.99 |
![]() Dragon Saw Gunner Uniform 1 6 Toys Bbi Soldier Story Miniature GI joe $3.99 Time Remaining: 3h 38m Buy It Now for only: $3.99 |
![]() Real Good Toys 3 Story 1 Scale Miniatures Showcase MS600 $202.99 Time Remaining: 4h 32m Buy It Now for only: $202.99 |
![]() Real Good Toys 4 Story 1 Scale Miniatures Showcase MS400 $164.99 Time Remaining: 4h 33m Buy It Now for only: $164.99 |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $6.00 (7 Bids) Time Remaining: 8h 2m |
![]() Soldier Story USMC 1st 2nd marine Hands 1 6 Toys Bbi Miniature $4.99 Time Remaining: 8h 6m Buy It Now for only: $4.99 |
![]() DID Halder German MG Ammo Drum 1 6 Toys City Dragon Bbi Miniature Soldier Story $4.99 Time Remaining: 8h 13m Buy It Now for only: $4.99 |
![]() DID German Iron Cross 1 6 Toys City Bbi Dragon Soldier Story 3R Miniature GI joe $2.99 Time Remaining: 8h 22m Buy It Now for only: $2.99 |
![]() Toys city German Oak Leaf Smock Cover 1 6 DID Dragon Bbi Soldier Story Miniature $6.99 Time Remaining: 8h 26m Buy It Now for only: $6.99 |
![]() Soldier Story Tarawa Uniform 1 6 Toys City 3R Bbi Dragon DID Miniature GI Joe $15.99 Time Remaining: 8h 37m Buy It Now for only: $15.99 |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.79 (4 Bids) Time Remaining: 8h 57m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.81 (2 Bids) Time Remaining: 9h 49m |
![]() Soldier Story German Wiking Boots 1 6 Toys City Dragon Bbi DID Miniature GI Joe $8.99 Time Remaining: 10h 44m Buy It Now for only: $8.99 |
![]() Soldier Story CIA SAD Pliers n Pouch 1 6 Dragon Toys City Bbi Miniature GI Joe $1.99 Time Remaining: 10h 49m Buy It Now for only: $1.99 |
![]() Soldier Story CIA SAD Patches 1 6 Dragon Toys City Bbi Miniature Emblem GI Joe $1.50 Time Remaining: 10h 51m Buy It Now for only: $1.50 |
![]() Soldier Story German Tunic Wiking 1 6 Toys City Dragon DID Bbi Miniature GI Joe $8.99 Time Remaining: 10h 59m Buy It Now for only: $8.99 |
![]() LEGO TOY STORY 3 Watch Set and Miniature WOODY NEW $18.99 Time Remaining: 1d 18m Buy It Now for only: $18.99 |
![]() COLLECTIBLE DISNEY PIXAR TOY STORY WOODY MAGICAL MINIATURES KEEPSAKE $9.99 Time Remaining: 1d 28m Buy It Now for only: $9.99 |
![]() Soldier Story EOD Knife 1 6 Toys City Dragon Bbi Miniature GI Joe US Navy $5.99 Time Remaining: 1d 1h 6m Buy It Now for only: $5.99 |
![]() DID Konig German Sniper Pants 1 6 Toys City Dragon Bbi Miniature Soldeir Story $2.99 Time Remaining: 1d 1h 28m Buy It Now for only: $2.99 |
![]() 2000 Disney Toy Story Buzz and Woody Magical Miniatures NEW COMPLETE SERIES $9.95 Time Remaining: 1d 6h 34m Buy It Now for only: $12.95 |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.56 (2 Bids) Time Remaining: 1d 8h 5m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.67 (2 Bids) Time Remaining: 1d 8h 55m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.04 (2 Bids) Time Remaining: 1d 9h 44m |
![]() Bbi Garand M1 Rifle 1 6 Toys City Soldier Story Dragon DID Miniature GI Joe $13.99 Time Remaining: 2d 5m Buy It Now for only: $13.99 |
![]() Soldier Story Modern Patch Lot Emblems 1 6 Toys City Dragon Miniature GI joe $3.99 Time Remaining: 2d 21m Buy It Now for only: $3.99 |
![]() Miniature Toy Story Horse Bullseye $2.00 Time Remaining: 2d 6h 14m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $1.77 (3 Bids) Time Remaining: 2d 9h 14m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 (1 Bid) Time Remaining: 2d 10h 10m |
![]() Soldier Story Jake McNiece Compass 1 6 Toys City Bbi DID Miniature GI Joe Dragon $1.99 Time Remaining: 3d 5h 37m Buy It Now for only: $1.99 |
![]() Soldier Story Jake McNiece Musette Bag 1 6 Toys City Bbi DID Dragon Miniature GI $7.99 Time Remaining: 3d 6h Buy It Now for only: $7.99 |
![]() Soldier Story Jake McNiece Bayonet 1 6 Toys City DID Dragon Miniature Bbi GI Joe $3.99 Time Remaining: 3d 6h 4m Buy It Now for only: $3.99 |
![]() Soldier Story McNiece Ammo Belt 1 6 Toys City Bbi Dragon DID Miniature GI Joe $10.99 Time Remaining: 3d 7h 30m Buy It Now for only: $10.99 |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 (1 Bid) Time Remaining: 3d 8h 4m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 (1 Bid) Time Remaining: 3d 8h 55m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 (1 Bid) Time Remaining: 3d 10h 5m |
![]() Soldier Story Jake McNiece US Airborne Rope 1 6 Toys DID Bbi Miniature GI Joe $1.99 Time Remaining: 4d 5h 24m Buy It Now for only: $1.99 |
![]() Soldier Story Jake McNiece Pistol 1 6 Toys City DID Bbi Miniature GI Joe $5.99 Time Remaining: 4d 5h 43m Buy It Now for only: $5.99 |
![]() Soldier Story Jake McNiece Clicker 1 6 Toys City DID Bbi Miniature GI Joe $1.99 Time Remaining: 4d 5h 53m Buy It Now for only: $1.99 |
![]() Toy Story Happy Birthday Food and Drink Set Woody for dollhouse Miniature New $6.00 Time Remaining: 4d 6h 52m Buy It Now for only: $6.00 |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 4d 8h 10m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $2.22 (4 Bids) Time Remaining: 4d 8h 23m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Lot S143 $0.99 (1 Bid) Time Remaining: 4d 8h 57m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 4d 9h 6m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 4d 9h 19m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 4d 9h 42m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 (1 Bid) Time Remaining: 4d 9h 44m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Lot S143 $0.99 (1 Bid) Time Remaining: 4d 9h 50m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 5d 7h 58m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 5d 8h 52m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 5d 9h 55m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Lot S143 $0.99 (1 Bid) Time Remaining: 5d 9h 59m |
![]() Disney TOY STORY WOODY MINIATURE cake topper FIGURINE Birthday Party Supplies $4.80 Time Remaining: 6d 2h 49m Buy It Now for only: $4.80 |
![]() Disney Re ment Miniature Toy Story Happy Food 4 $12.99 Time Remaining: 6d 6h 28m Buy It Now for only: $12.99 |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 6d 8h 21m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 6d 8h 24m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 6d 8h 58m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 6d 9h 12m |
![]() Miniature Dollhouse Re ment Toy Story Dinsor Soliders Mixed lot S186 $0.99 Time Remaining: 6d 9h 50m |
![]() Miniature Dollhouse Re ment Toy Story Dinosaur Soliders Pizza Mixed Lot S202 $0.99 Time Remaining: 6d 10h 1m |
![]() Toy Story Characters Figurines Lot of 5 miniature cake cupcake toppers $4.95 Time Remaining: 6d 12h 46m |
![]() Re ment Dollhouse miniature Disney toy story 3 sweet tea food display Full Set 8 $126.53 Time Remaining: 6d 20h 27m Buy It Now for only: $126.53 |
![]() Disney TOY STORY Miniature Golf Course NIP $11.95 Time Remaining: 8d 5h 26m Buy It Now for only: $11.95 |
![]() DISNEY TOY STORY TINY KINGDOM COMPLETE SET of 8 Miniature Figurines MINT $59.95 Time Remaining: 8d 6h 18m Buy It Now for only: $59.95 |
![]() Buddy Pack Miniature Figure Set BUZZ and JESSIE Disney Pixar Toy Story 3 MISP $26.97 Time Remaining: 10d 12h 10m Buy It Now for only: $26.97 |
![]() Disney Toy Story miniature playing card strap $9.20 Time Remaining: 10d 18h 37m Buy It Now for only: $9.20 |
![]() Soldier Story McNiece Flashligh 1 6 Torch Toys City Bbi Dragon Miniature GI joe $3.99 Time Remaining: 10d 21h 43m Buy It Now for only: $3.99 |
Why toys, such as Schleich characters, are so important for kids in the Dentist's Waiting Room
A visit to the dentist is often fraught with anxiety but toys in a dentist' waiting room might be the answer for children. So which ones should your dentist have?
It behoves the dentist to have a range of toys, such as Schleich characters, to appeal to all age groups so that any young patient can find something of interest. Children are always apprehensive going to the dentist and will seldom settle down to look at a book, unless the parent takes an active role in helping the child to read or by pointing out a story being told in pictures.
Much better then, to have plenty of toys that a child can interact with, so long as they are not too noisy and likely to disturb other patients who may also be waiting. The very small toddler is naturally inquisitive so toys that involve different objects of various colours and shapes, sorting them or putting them into the right place, are ideal to hold their interest. Maze and pathfinder toys enhance hand-eye co-ordination and an understanding of cause and effect.
It is always exciting for a child to come across toys in the waiting room that they don't have at home or may never have seen before. The likelihood of this is increased if the dentist has the space for a wide range of toys.
Older children are often great fans of model race tracks like Scalextric or miniature railway sets but these more sophisticated toys may not stand up for long against the treatment meted out by children day in and day out. It may be necessary to settle for more robust, simpler model train sets that have to be pushed along rather than have the worry of electricity and fragile moving parts being within the sphere of influence of young hands that may not be totally supervised.
Another possibility is to have various sets of model cars or figures that children can play with. Corgi toys are a long-time favourite with small boys who will spend ages running them up and down, even if only allowed limited space. A smooth area of lino is much better for this than a carpet.
Many children like to play with models of farm animals, or dinosaurs, or soldiers on horseback, and there is an incredible range of these toys produced by the Schleich company of Germany. There is choice of: a world of history set with dinosaurs and prehistoric mammals, the world of knights, the world of American Indians, the world of fantasy, and sets depicting horse-riding with cowboys, race jockeys, and dressage sets.
Sets of models like these are a good investment since they will stand up well to wear and tear, and will appeal across a broad range of children's ages and interests
Gone are the days when your child is expected to sit quietly waiting for the dentist with nothing to look at except a goldfish in a bowl and an outdated issue of "The Spectator". These days a progressive dentist will have a comfortable waiting room with enough of interest for all members of the family, even the very youngest. With interactive toys, such as from Schleich,, your child may even look forward to going to the dentist!
<input id="gwProxy" type="hidden" /><input id="jsProxy" />
<input id="gwProxy" type="hidden" /><input id="jsProxy">
<!-- Top iFrame --> <!-- Bottom iFrame -->
[removed]// <![CDATA[ var LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT = 300; var LEO_HIGHLIGHTS_MAX_HIGHLIGHTS = 50; var LEO_HIGHLIGHTS_IFRAME_TOP_ID = "leoHighlights_top_iframe"; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID = "leoHighlights_bottom_iframe"; var LEO_HIGHLIGHTS_IFRAME_DIV_ID = "leoHighlights_iframe_modal_div_container"; var LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_WIDTH = 520; var LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_HEIGHT = 391; var LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_WIDTH = 520; var LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_HEIGHT = 665; var LEO_HIGHLIGHTS_IFRAME_TOP_POS_X = 0; var LEO_HIGHLIGHTS_IFRAME_TOP_POS_Y = 0; var LEO_HIGHLIGHTS_IFRAME_TOP_WIDTH = 520; var LEO_HIGHLIGHTS_IFRAME_TOP_HEIGHT = 294; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_POS_X = 96; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_POS_Y = 294; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_WIDTH = 425; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_HEIGHT = 97; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_WIDTH = 425; var LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_HEIGHT = 371; var LEO_HIGHLIGHTS_SHOW_DELAY_MS = 300; var LEO_HIGHLIGHTS_HIDE_DELAY_MS = 750; var LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT = "transparent none repeat scroll 0% 0%"; var LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER = "rgb(245, 245, 0) none repeat scroll 0% 0%"; var LEO_HIGHLIGHTS_ROVER_TAG = "711-36858-13496-14"; createInlineScriptElement("var LEO_HIGHLIGHTS_DEBUG = false;
var LEO_HIGHLIGHTS_DEBUG_POS = false; var _leoHighlightsPrevElem = null; /** * Checks if the passed in class exists * @param c * @return */
function _leoHighlightsClassExists(c) { return typeof(c) == "function" && typeof(c.prototype) == "object" ? true : false;
} /** * Checks if the firebug console is available * @param c * @return */
function _leoHighlightsFirebugConsoleAvailable(c) { try { if(_leoHighlightsClassExists(_FirebugConsole) && window.console && console.log && (console instanceof _FirebugConsole)) { return true; } } catch(e){} return false;
} /** * General method used to debug exceptions * * @param location * @param e * @return */
function _leoHighlightsReportExeception(location,e)
{ try { if(_leoHighlightsFirebugConsoleAvailable() ||LEO_HIGHLIGHTS_DEBUG) { var logString=location+": "+e+"nt"+e.name+"nt"+ (e.number&0xFFFF;)+"nt"+e.description; if(_leoHighlightsFirebugConsoleAvailable()) { console.error(logString); console.trace(); } } if(LEO_HIGHLIGHTS_DEBUG) alert(logString); } catch(e){}
} /** * This will log a string to the firebug console * * @param str * @return */
function _leoHighlightsDebugLog(str)
{ try { if(_leoHighlightsFirebugConsoleAvailable()) { console.log(typeof(_FirebugConsole)+" "+str); } } catch(e) { _leoHighlightsReportExeception("_leoHighlightsDebugLog() "+str,e); }
} /** * This will get an attribute and decode it. * * @param elem * @param id * @return */
function _leoHighlightsGetAttrib(elem,id)
{ try { var val=elem.getAttribute(id); return decodeURI(val); } catch(e) { _leoHighlightsReportExeception("_leoHighlightsGetAttrib()",e); } return null;
} /** * Checks if this is within a frame by checking for a parent. * * @return */
function _leoHighlightsIsFrame()
{ try { return (window!=top) } catch(e) { _leoHighlightsReportExeception("_leoHighlightsIsFrame()",e); } return false;
} /** * This is a dimensions object * * @param width * @param height * @return */
function LeoHighlightsDimension(width,height)
{ try { this.width=width; this.height=height; this.toString=function() { return ("("+this.width+","+this.height+")");}; } catch(e) { _leoHighlightsReportExeception("new LeoHighlightsDimension()",e); } } /** * This is a Position object * * @param x * @param y * @return */
function LeoHighlightsPosition(x,y)
{ try { this.x=x; this.y=y; this.toString=function() { return ("("+this.x+","+this.y+")");}; } catch(e) { _leoHighlightsReportExeception("new LeoHighlightsPosition()",e); } } var LEO_HIGHLIGHTS_ADJUSTMENT = new LeoHighlightsPosition(3,3);
var LEO_HIGHLIGHTS_IFRAME_TOP_SIZE = new LeoHighlightsDimension(LEO_HIGHLIGHTS_IFRAME_TOP_WIDTH,LEO_HIGHLIGHTS_IFRAME_TOP_HEIGHT);
var LEO_HIGHLIGHTS_IFRAME_BOTTOM_HOVER_SIZE = new LeoHighlightsDimension(LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_WIDTH,LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_HEIGHT);
var LEO_HIGHLIGHTS_IFRAME_BOTTOM_CLICK_SIZE = new LeoHighlightsDimension(LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_WIDTH,LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_HEIGHT); var LEO_HIGHLIGHTS_DIV_HOVER_SIZE = new LeoHighlightsDimension(LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_WIDTH,LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_HEIGHT);
var LEO_HIGHLIGHTS_DIV_CLICK_SIZE = new LeoHighlightsDimension(LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_WIDTH,LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_HEIGHT); /** * Sets the size of the passed in element * * @param elem * @param dim * @return */
function _leoHighlightsSetSize(elem,dim)
{ try { // Set the popup location elem.style.width = dim.width + "px"; if(elem.width) elem.width=dim.width; elem.style.height = dim.height + "px"; if(elem.height) elem.height=dim.height; } catch(e) { _leoHighlightsReportExeception("_leoHighlightsSetSize()",e); } } /** * This can be used for a simple one argument callback * * @param callName * @param argName * @param argVal * @return */
function _leoHighlightsSimpleGwCallBack(callName,argName, argVal)
{ try { var gwObj = new Gateway(); if(argName) gwObj.addParam(argName,argVal); gwObj.callName(callName); } catch(e) { _leoHighlightsReportExeception("_leoHighlightsSimpleGwCallBack() "+callName,e); }
} /** * This gets a url argument from the current document. * * @param url * @return */
function _leoHighlightsGetUrlArg(url, name )
{ name = name.replace(/[[]/,"\[").replace(/[]]/,"\]"); var regexS = "[\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec(url); if( results == null ) return ""; else return results[1];
} /** * This allows to redirect the top window to the passed in url * * @param url * @return */
function _leoHighlightsRedirectTop(url)
{ try { top.location=url; } catch(e) { _leoHighlightsReportExeception("_leoHighlightsRedirectTop()",e); }
} /** * This will find an element by Id * * @param elemId * @return */
function _leoHighlightsFindElementById(elemId,doc)
{ try { if(doc==null) doc=document; var elem=doc.getElementById(elemId); if(elem) return elem; /* This is the handling for IE */ if(doc.all) { elem=doc.all[elemId]; if(elem) return elem; for ( var i = (document.all.length-1); i >= 0; i--) { elem=doc.all[i]; if(elem.id==elemId) return elem; } } } catch(e) { _leoHighlightsReportExeception("_leoHighlightsFindElementById()",e); } return null;
} /** * Get the location of one element relative to a parent reference * * @param ref * the reference element, this must be a parent of the passed in * element * @param elem * @return */
function _leoHighlightsGetLocation(ref, elem) { _leoHighlightsDebugLog("_leoHighlightsGetLocation "+elem.id); var count = 0; var location = new LeoHighlightsPosition(0,0); var walk = elem; while (walk != null && walk != ref && count < LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT) { location.x += walk.offsetLeft; location.y += walk.offsetTop; walk = walk.offsetParent; count++; } _leoHighlightsDebugLog("Location is: "+elem.id+" - "+location); return location;
} /** * This is used to update the position of an element as a popup * * @param IFrame * @param anchor * @return */
function _leoHighlightsUpdatePopupPos(iFrame,anchor)
{ try { // Gets the scrolled location for x and y var scrolledPos=new LeoHighlightsPosition(0,0); if( self.pageYOffset ) { scrolledPos.x = self.pageXOffset; scrolledPos.y = self.pageYOffset; } else if( document.documentElement && document.documentElement.scrollTop ) { scrolledPos.x = document.documentElement.scrollLeft; scrolledPos.y = document.documentElement.scrollTop; } else if( document.body ) { scrolledPos.x = document.body.scrollLeft; scrolledPos.y = document.body.scrollTop; } /* Get the total dimensions to see what scroll bars might be active */ var totalDim=new LeoHighlightsDimension(0,0) if (document.all && document.documentElement && document.documentElement.clientHeight&&document;.documentElement.clientWidth) { totalDim.width = document.documentElement.scrollWidth; totalDim.height = document.documentElement.scrollHeight; } else if (document.all) { /* This is in IE */ totalDim.width = document.body.scrollWidth; totalDim.height = document.body.scrollHeight; } else { totalDim.width = document.width; totalDim.height = document.height; } // Gets the location of the available screen space var centerDim=new LeoHighlightsDimension(0,0); if(self.innerWidth && self.innerHeight ) { centerDim.width = self.innerWidth-(totalDim.height>self.innerHeight?16:0); // subtracting scroll bar offsets for firefox centerDim.height = self.innerHeight-(totalDim.width>self.innerWidth?16:0); // subtracting scroll bar offsets for firefox } else if( document.documentElement && document.documentElement.clientHeight ) { centerDim.width = document.documentElement.clientWidth; centerDim.height = document.documentElement.clientHeight; } else if( document.body ) { centerDim.width = document.body.clientWidth; centerDim.height = document.body.clientHeight; } // Get the current dimension of the popup element var iFrameDim=new LeoHighlightsDimension(iFrame.offsetWidth,iFrame.offsetHeight) if (iFrameDim.width <= 0) iFrameDim.width = iFrame.style.width.substring(0, iFrame.style.width.indexOf('px')); if (iFrameDim.height <= 0) iFrameDim.height = iFrame.style.height.substring(0, iFrame.style.height.indexOf('px')); /* Calculate the position, lower right hand corner by default */ var position=new LeoHighlightsPosition(0,0); position.x=scrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x; position.y=scrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y; if(anchor!=null) { //centerDim in relation to the anchor element if available var topOrBottom = false; var anchorPos=_leoHighlightsGetLocation(document.body, anchor); var anchorScreenPos = new LeoHighlightsPosition(anchorPos.x-scrolledPos.x,anchorPos.y-scrolledPos.y); var anchorDim=new LeoHighlightsDimension(anchor.offsetWidth,anchor.offsetHeight) if (anchorDim.width <= 0) anchorDim.width = anchor.style.width.substring(0, anchor.style.width.indexOf('px')); if (anchorDim.height <= 0) anchorDim.height = anchor.style.height.substring(0, anchor.style.height.indexOf('px')); // Check if the popup can be shown above or below the element if (centerDim.height - anchorDim.height - iFrameDim.height - anchorScreenPos.y > 0) { // Show below, formula above calculates space below open iFrame position.y = anchorPos.y + anchorDim.height; topOrBottom = true; } else if (anchorScreenPos.y - anchorDim.height - iFrameDim.height > 0) { // Show above, formula above calculates space above open iFrame position.y = anchorPos.y - iFrameDim.height - anchorDim.height; topOrBottom = true; } _leoHighlightsDebugLog("_leoHighlightsUpdatePopupPos() - topOrBottom: "+topOrBottom); if (topOrBottom) { // We attempt top attach the window to the element position.x = anchorPos.x - iFrameDim.width / 2; if (position.x < 0) position.x = 0; else if (position.x + iFrameDim.width > scrolledPos.x + centerDim.width) position.x = scrolledPos.x + centerDim.width - iFrameDim.width; _leoHighlightsDebugLog("_leoHighlightsUpdatePopupPos() - topOrBottom: "+position); } else { // Attempt to align on the right or left hand side if (centerDim.width - anchorDim.width - iFrameDim.width - anchorScreenPos.x > 0) position.x = anchorPos.x + anchorDim.width; else if (anchorScreenPos.x - anchorDim.width - iFrameDim.width > 0) position.x = anchorPos.x - anchorDim.width; else // default to below position.y = anchorPos.y + anchorDim.height; _leoHighlightsDebugLog("_leoHighlightsUpdatePopupPos() - sideBottom: "+position); } } /* Make sure that we don't go passed the right hand border */ if(position.x+iFrameDim.width>centerDim.width-20) position.x=centerDim.width-(iFrameDim.width+20); // Make sure that we didn't go passed the start if(position.x<0) position.x=0; if(position.y<0) position.y=0; _leoHighlightsDebugLog("Popup info id: " +iFrame.id+" - "+anchor.id + "nscrolled " + scrolledPos + "ncenter/visible " + centerDim + "nanchor (absolute) " + anchorPos + "nanchor (screen) " + anchorScreenPos + "nSize (anchor) " + anchorDim + "nSize (popup) " + iFrameDim + "nResult pos " + position); // Set the popup location iFrame.style.left = position.x + "px"; iFrame.style.top = position.y + "px"; } catch(e) { _leoHighlightsReportExeception("_leoHighlightsUpdatePopupPos()",e); }
} /** * This will show the passed in element as a popup * * @param anchorId * @param size * * @return */
function _leoHighlightsShowPopup(anchorId,size)
{ try { var popup=new LeoHighlightsPopup(anchorId,size); popup.show(); } catch(e) { _leoHighlightsReportExeception("_leoHighlightsShowPopup()",e); } } /** * This will transform the passed in url to a rover url * * @param url * @return */
function _leoHighlightsGetRoverUrl(url)
{ var rover=LEO_HIGHLIGHTS_ROVER_TAG; var roverUrl="http://rover.ebay.com/rover/1/"+rover+"/4?&mpre;="+encodeURI(url); return roverUrl;
} /** * Sets the size of the bottom windown part * * @param size * @return */
function _leoHighlightsSetBottomSize(size,clickId)
{ /* Get the elements */ var iFrameBottom=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID); var iFrameDiv=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_DIV_ID); /* Figure out the correct sizes */ var iFrameBottomSize=(size==1)?LEO_HIGHLIGHTS_IFRAME_BOTTOM_CLICK_SIZE:LEO_HIGHLIGHTS_IFRAME_BOTTOM_HOVER_SIZE; var divSize=(size==1)?LEO_HIGHLIGHTS_DIV_CLICK_SIZE:LEO_HIGHLIGHTS_DIV_HOVER_SIZE; /* Refresh the iFrame's url, by removing the size arg and adding it again */ leoHighlightsUpdateUrl(iFrameBottom,size,clickId); /* Clear the hover flag, if the user shows this at full size */ _leoHighlightsPrevElem.hover=size==1?false:true; _leoHighlightsSetSize(iFrameBottom,iFrameBottomSize); _leoHighlightsSetSize(iFrameDiv,divSize);
} /** * Class for a Popup * * @param anchorId * @param size * * @return */
function LeoHighlightsPopup(anchorId,size)
{ try { _leoHighlightsDebugLog("LeoHighlightsPopup() "); this.anchorId=anchorId; this.anchor=_leoHighlightsFindElementById(this.anchorId); this.topIframe=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_TOP_ID); this.bottomIframe=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID); this.iFrameDiv=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_DIV_ID); this.topIframe.src=unescape(this.anchor.getAttribute('leoHighlights_url_top'));; this.bottomIframe.src=unescape(this.anchor.getAttribute('leoHighlights_url_bottom'));; _leoHighlightsDebugLog("1) LeoHighlightsPopup() ("+this.topIframe.style.top+", "+this.topIframe.style.left+")"); _leoHighlightsDebugLog("2) LeoHighlightsPopup() ("+this.bottomIframe.style.top+", "+this.bottomIframe.style.left+")"); leoHighlightsSetSize(size); this.updatePos=function() { _leoHighlightsUpdatePopupPos(this.iFrameDiv,this.anchor)}; this.show=function() { this.updatePos(); this.iFrameDiv.style.visibility = "visible"; this.iFrameDiv.style.display = "block"; this.updatePos(); _leoHighlightsDebugLog("3) LeoHighlightsPopup() ("+this.topIframe.style.top+", "+this.topIframe.style.left+")"); _leoHighlightsDebugLog("4) LeoHighlightsPopup() ("+this.bottomIframe.style.top+", "+this.bottomIframe.style.left+")"); } this.scroll=function() { this.updatePos();}; } catch(e) { _leoHighlightsReportExeception("new LeoHighlightsPopup()",e); }
} /** * updates the url for the iFrame * * @param iFrame * @param size * @param clickId * @return */
function leoHighlightsUpdateUrl(iFrame,size,clickId,destUrl)
{ try { _leoHighlightsDebugLog("leoHighlightsUpdateUrl() "+destUrl); var url=iFrame.src; var idx=url.indexOf("&size;="); if(idx>=0) url=url.substring(0,idx); // size=1; _leoHighlightsDebugLog("leoHighlightsUpdateUrl() size="+size+" "+url); if(size!=null) url+=("&size;="+size); if(clickId!=null) url+=("&clickId;="+clickId); if(destUrl!=null) url+=("&url;="+destUrl); _leoHighlightsDebugLog("leoHighlightsUpdateUrl() "+url); iFrame.src=url; } catch(e) { _leoHighlightsReportExeception("leoHighlightsUpdateUrl()",e); }
} /**
*
* This can be used to close an iframe
*
* @param id
* @return
*/
function leoHighlightsSetSize(size,clickId)
{ try { /* Get the element */ var iFrameTop=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_TOP_ID); /* Figure out the correct sizes */ var iFrameTopSize=LEO_HIGHLIGHTS_IFRAME_TOP_SIZE; /* Refresh the iFrame's url, by removing the size arg and adding it again */ leoHighlightsUpdateUrl(iFrameTop,size,clickId); _leoHighlightsSetSize(iFrameTop,iFrameTopSize); _leoHighlightsSetBottomSize(size,clickId); /* Clear the hover flag, if the user shows this at full size */ if(size==1&&_leoHighlightsPrevElem) _leoHighlightsPrevElem.hover=false; } catch(e) { _leoHighlightsReportExeception("leoHighlightsSetSize()",e); }
} /** * Start the popup a little bit delayed. * Somehow IE needs some time to find the element by id. * * @param anchorId * @param size * * @return */
function leoHighlightsShowPopup(anchorId,size)
{ try { var elem=_leoHighlightsFindElementById(anchorId); if(_leoHighlightsPrevElem&&(_leoHighlightsPrevElem!=elem)) _leoHighlightsPrevElem.shown=false; elem.shown=true; _leoHighlightsPrevElem=elem; _leoHighlightsDebugLog("leoHighlightsShowPopup() "+_leoHighlightsPrevElem); /* FF needs to find the element first */ _leoHighlightsFindElementById(anchorId); setTimeout("_leoHighlightsShowPopup('"+anchorId+"','"+size+"');",10); } catch(e) { _leoHighlightsReportExeception("leoHighlightsShowPopup()",e); } } /**
*
* This can be used to close an iframe
*
* @param id
* @return
*/
function leoHighlightsHideElem(id)
{ try { /* Get the appropriate sizes */ var elem=_leoHighlightsFindElementById(id); if(elem) elem.style.visibility="hidden"; /* Clear the page for the next run through */ var iFrame=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_TOP_ID); if(iFrame) iFrame.src="about:blank"; var iFrame=_leoHighlightsFindElementById(LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID); if(iFrame) iFrame.src="about:blank"; if(_leoHighlightsPrevElem) { _leoHighlightsPrevElem.shown=false; _leoHighlightsPrevElem=null; } } catch(e) { _leoHighlightsReportExeception("leoHighlightsHideElem()",e); }
} /**
*
* This can be used to close an iframe.
* Since the iFrame is reused the frame only gets hidden
*
* @return
*/
function leoHighlightsIFrameClose()
{ try { _leoHighlightsSimpleGwCallBack("LeoHighlightsHideIFrame"); } catch(e) { _leoHighlightsReportExeception("leoHighlightsIFrameClose()",e); }
} /** * This should handle the click events * * @param anchorId * @return */
function leoHighlightsHandleClick(anchorId)
{ try { if(_leoHighlightsIsFrame()) return false; var anchor=_leoHighlightsFindElementById(anchorId); anchor.hover=false; if(anchor.startTimer) clearTimeout(anchor.startTimer); /* Report the click event */ leoHighlightsReportEvent("clicked", window.document.domain, _leoHighlightsGetAttrib(anchor,'leohighlights_keywords'),null, _leoHighlightsGetAttrib(anchor,'leohighlights_accept'), _leoHighlightsGetAttrib(anchor,'leohighlights_reject')); leoHighlightsShowPopup(anchorId,1); return false; } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleClick()",e); } } /** * This should handle the hover events * * @param anchorId * @return */
function leoHighlightsHandleHover(anchorId)
{ try { if(_leoHighlightsIsFrame()) return false; var anchor=_leoHighlightsFindElementById(anchorId); anchor.hover=true; /* Report the hover event */ leoHighlightsReportEvent("hovered", window.document.domain, _leoHighlightsGetAttrib(anchor,'leohighlights_keywords'),null, _leoHighlightsGetAttrib(anchor,'leohighlights_accept'), _leoHighlightsGetAttrib(anchor,'leohighlights_reject')); leoHighlightsShowPopup(anchorId,0); return false; } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleHover()",e); } } /** * This will handle the mouse over setup timers for the appropriate timers * * @param id * @return */
function leoHighlightsHandleMouseOver(id)
{ try { if(_leoHighlightsIsFrame()) return; var anchor=_leoHighlightsFindElementById(id); /* Clear the end timer if required */ if(anchor.endTimer) clearTimeout(anchor.endTimer); anchor.endTimer=null; anchor.style.background=LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER; /* The element is already showing we are done */ if(anchor.shown) return; /* Setup the start timer if required */ anchor.startTimer=setTimeout(function(){ leoHighlightsHandleHover(anchor.id); anchor.hover=true; }, LEO_HIGHLIGHTS_SHOW_DELAY_MS); } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleMouseOver()",e); }
} /** * This will handle the mouse over setup timers for the appropriate timers * * @param id * @return */
function leoHighlightsHandleMouseOut(id)
{ try { var anchor=_leoHighlightsFindElementById(id); /* Clear the start timer if required */ if(anchor.startTimer) clearTimeout(anchor.startTimer); anchor.startTimer=null; anchor.style.background=LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT; if(!anchor.shown||!anchor.hover) return; /* Setup the start timer if required */ anchor.endTimer=setTimeout(function(){ leoHighlightsHideElem(LEO_HIGHLIGHTS_IFRAME_DIV_ID); anchor.shown=false; _leoHighlightsPrevElem=null; },LEO_HIGHLIGHTS_HIDE_DELAY_MS); } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleMouseOut()",e); }
} /** * This handles the mouse movement into the currently opened window. * Just clear the close timer * * @return */
function leoHighlightsHandleIFrameMouseOver()
{ try { if(_leoHighlightsPrevElem&&_leoHighlightsPrevElem.endTimer) clearTimeout(_leoHighlightsPrevElem.endTimer); } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleIFrameMouseOver()",e); }
} /** * This handles the mouse movement into the currently opened window. * Just clear the close timer * * @param id * @return */
function leoHighlightsHandleIFrameMouseOut()
{ try { if(_leoHighlightsPrevElem) leoHighlightsHandleMouseOut(_leoHighlightsPrevElem.id); } catch(e) { _leoHighlightsReportExeception("leoHighlightsHandleIFrameMouseOut()",e); }
}
/** * This is a method is used to make the javascript within IE runnable */
var leoHighlightsRanUpdateDivs=false;
function leoHighlightsUpdateDivs()
{ try { /* Check if this is an IE browser and if divs have been updated already */ if(document.all&&!leoHighlightsRanUpdateDivs&&!_leoHighlightsIsFrame()) { leoHighlightsRanUpdateDivs=true; // Set early to prevent running twice for(var i=0;i0) url=url.substring(0,idx); /* Append the text to the end */ url+="#"+encodeURI(txt); /* Set the iframe with the new url that contains the hash tag */ topIFrame.src=url; } catch(e) { _leoHighlightsReportExeception("leoHighlightsSetExpandTxt()",e); }
} /*----------------------------------------------------------------------*/
/* Methods provided to the highlight providers... */
/*----------------------------------------------------------------------*/ /** * This will set the expand text for the Top window */
function leoHL_SetExpandTxt(txt)
{ try { _leoHighlightsDebugLog("leoHL_SetExpandTxt() "+txt); _leoHighlightsSimpleGwCallBack("LeoHighlightsSetExpandTxt","expandTxt",txt); } catch(e) { _leoHighlightsReportExeception("leoHL_SetExpandTxt()",e); }
} /** * This will redirect the top window to the passed in url * * @param url * @param parentId * @return */
function leoHL_RedirectTop(url,parentId)
{ try { try{ var domain=_leoHighlightsGetUrlArg(window.document.URL,"domain") var keywords=_leoHighlightsGetUrlArg(window.document.URL,"keywords") var vendorId=_leoHighlightsGetUrlArg(window.document.URL,"vendorId") leoHighlightsReportEvent("clickthrough", domain,keywords, vendorId); }catch(e){ _leoHighlightsReportExeception("leoHL_RedirectTop()",e); } _leoHighlightsRedirectTop(url); } catch(e) { _leoHighlightsReportExeception("leoHL_RedirectTop()",e); }
} /** * This will redirect the top window to the passed in url * * @param url * @param parentId * @return */
function LeoHL_RedirectTop(url,parentId)
{ leoHL_RedirectTop(url,parentId);
} /** * This will redirect the top window to the passed in url * * @param url * @param parentId * @return */
function leoHL_RedirectTopAd(url,parentId)
{ try { try{ var domain=_leoHighlightsGetUrlArg(window.document.URL,"domain") var keywords=_leoHighlightsGetUrlArg(window.document.URL,"keywords") var vendorId=_leoHighlightsGetUrlArg(window.document.URL,"vendorId") leoHighlightsReportEvent("advertisement.click", domain,keywords, vendorId); }catch(e){ _leoHighlightsReportExeception("leoHL_RedirectTopAd()",e); } _leoHighlightsRedirectTop(url); } catch(e) { _leoHighlightsReportExeception("leoHL_RedirectTopAd()",e); }
} /** * This will set the size of the iframe * * @param url * @param parentId * * @return */
function leoHl_setSize(size,url)
{ try { /* Get the clickId */ var clickId=_leoHighlightsGetUrlArg( url,"clickId") var gwObj = new Gateway(); gwObj.addParam("size",size); if(clickId) gwObj.addParam("clickId",clickId+"_blah"); gwObj.callName("LeoHighlightsSetSize"); } catch(e) { _leoHighlightsReportExeception("leoHl_setSize()",e); }
} /** * This will toggle the size of the window * * @return */
function leoHl_ToggleSize()
{ try { var gwObj = new Gateway(); gwObj.callName("LeoHighlightsToggleSize"); } catch(e) { _leoHighlightsReportExeception("leoHl_ToggleSize()",e); }
} ");
]]>[removed]
About the Author
Robert Esmund works with Totally Schleich.
<input id="gwProxy" type="hidden" /><input id="jsProxy">









































































