<html>
<head>
<title>Magic Zoom: Magic Zoom™ API & Callbacks</title>
<!-- link to magiczoom.css file -->
<link href="magiczoom/magiczoom.css" rel="stylesheet" type="text/css" media="screen"/>
<!-- link to magiczoom.js file -->
<script src="magiczoom/magiczoom.js" type="text/javascript"></script>
<!-- Magic Zoom options: define 'onready' callback -->
<script type="text/javascript">
MagicZoom.options = {
'onready': function(/* id of the <a> */id, /* whether zoom instance is started or updated */ updated) {
logEvents('Zoom on <a id="'+id+'"> is ready ('+(updated?'updated': 'started')+')');
}
}
</script>
<script type="text/javascript">
function logEvents(t) {
var c= document.getElementById('console-window');
c.innerHTML += '<br/>' + t;
}
function clearLog(){
var c= document.getElementById('console-window');
c.innerHTML = '';
}
</script>
</head>
<body>
<p>The API allows more advanced customisation of Magic Zoom™. Here are some examples of what you can do. <a href="mailto:support@magictoolbox.com">Email us</a> if you have questions.</p>
<div style="float: right;">
<div id="console-window" style="border: 1px inset black; background: #ffffff; width: 300px; height: 243px; overflow: auto;"></div>
<input type="button" value="Clear" onclick="clearLog();">
</div>
<!-- define Magic Zoom -->
<a href="images/r1-red-3.jpg" class="MagicZoom" id="zoom" title="Cool bike!"><img src="images/r1-red-2.jpg"/></a> <br/>
<!-- stop some particular Magic Zoom (by ID) -->
<input type="button" onclick="MagicZoom.stop('zoom');" value="Stop zoom"/>
<!-- start some particular Magic Zoom (by ID) -->
<input type="button" onclick="MagicZoom.start('zoom');" value="Start zoom"/>
<!-- start some particular Magic Zoom (by ID) -->
<input type="button" onclick="MagicZoom.zoomIn('zoom');" value="Zoom In"/>
<!-- zoom out particular Magic Zoom (by ID) -->
<input type="button" onclick="MagicZoom.zoomOut('zoom');" value="Zoom out"/>
<br/><br/>
<!-- update zoom manually (first approach) -->
<input type="button" onclick="MagicZoom.update('zoom', 'images/r1-blue-3.jpg', 'images/r1-blue-2.jpg', 'show-title: false; drag-mode: false');" value="Make it blue!"/>
<!-- update zoom manually (second approach) -->
<script type="text/javascript">
function green(){
var zoom = document.getElementById('zoom'); //get the reference to our zoom object
zoom.href = 'images/r1-black-3.jpg'; //change the big image
zoom.rel = 'drag-mode: true; zoom-height: 130px; zoom-position: top; zoom-distance: 0;'; // enable zoom drag mode
zoom.firstChild.src = 'images/r1-black-2.jpg'; //change the small image
// refresh ALL zooms on the page
MagicZoom.refresh();
}
</script>
<input type="button" onclick="green();" value="Drag mode"/>
<!-- track zooming position -->
<script type="text/javascript">
function getCoords(){
alert('Current zoom position is: x='+MagicZoom.getXY('zoom').x+', y='+MagicZoom.getXY('zoom').y);
}
</script>
<input type="button" onclick="getCoords();" value="Get coordinates (use drag mode)"/>
</body>
</html>