function animateCartAdd(src) { //alert(src); //topLocationOfCart //leftLocationOfCart //alert("wireFrame = "+document.getElementById('dvWire')); try { wireFrame = document.getElementById('dvWire'); origDiv = document.getElementById(src); bagDiv = document.getElementById('pwpMiniCartDiv'); //alert("1"); wireFrame.style.display = "block"; wireFrame.style.height = origDiv.offsetHeight + 'px'; wireFrame.style.width = origDiv.offsetWidth + 'px'; wireFrame.style.top = findPosY(origDiv) + 'px'; wireFrame.style.left = findPosX(origDiv) + 'px'; var leftLocationOfCart = findPosX(bagDiv); leftLocationOfCart+=200; var topLocationOfCart = findPosY(bagDiv); var tx = parseInt(leftLocationOfCart); var ty = parseInt(topLocationOfCart); //alert("2"); slideTo(tx, ty, 50); } catch(err) { wireFrame.style.display = "none"; //alert("hi"); } } function pos(x, y) { this.x = Math.round(x); this.y = Math.round(y); } var ar = new Array(); var arIdx = 0; var deltaWidth = 0; var deltaHeight = 0; function doSlide() { try { myControl = document.getElementById('dvWire'); myControl.style.top = Math.round(ar[arIdx].y) + 'px'; myControl.style.left = Math.round(ar[arIdx].x) + 'px'; myControl.style.height = (parseInt(myControl.style.height) - deltaHeight ) + 'px'; myControl.style.width = (parseInt(myControl.style.width) - deltaWidth ) + 'px'; if (arIdx != ar.length) { arIdx++; setTimeout('doSlide()', 2); } else { myControl.style.display = 'none'; //document.getElementById('miniCartIcon').style.display='block' //setTimeout('hideMiniIcon()', 3000); } } catch(err) { ar = new Array(); arIdx = 0; deltaWidth = 0; deltaHeight = 0; myControl.style.display = 'none'; //document.getElementById('miniCartIcon').style.display='block' //setTimeout('hideMiniIcon()', 3000); } } function slideTo(tx, ty, steps) { //alert("inside slideTo"); myControl = document.getElementById('dvWire'); var fx = parseInt(myControl.style.left); var fy = parseInt(myControl.style.top); var dx = parseInt(tx) - fx; var dy = parseInt(ty) - fy; //alert(ty); var sx = dx / steps; var sy = dy / steps; for (var i = 0; i < steps; i++) { fx += parseInt(sx); fy += parseInt(sy); ar[i] = new pos(fx, fy); //alert(fx); } arIdx = 0; deltaWidth = Math.round(parseInt(myControl.style.width) / steps); deltaHeight = Math.round(parseInt(myControl.style.height) / steps); doSlide(); } function findPosX(obj) { var curleft = 0; if (obj.offsetParent) { while (obj.offsetParent) { curleft += obj.offsetLeft obj = obj.offsetParent; } } else if (obj.x) curleft += obj.x; return curleft; } function findPosY(obj) { var curtop = 0; if (obj.offsetParent) { while (obj.offsetParent) { curtop += obj.offsetTop obj = obj.offsetParent; } } else if (obj.y) curtop += obj.y; return curtop; }