Mercurial > hg > digilib-old
view client/digitallibrary/jquery/svg/svgBasics.html @ 762:aab01da232ef jquery
small preparations for SVG
author | hertzhaft |
---|---|
date | Thu, 10 Feb 2011 09:20:56 +0100 |
parents | ccf67eaf97ee |
children | 6d7c51e4724b |
line wrap: on
line source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <title>jQuery SVG Basics</title> <style type="text/css"> @import "jquery.svg.css"; #svgbasics { position: absolute; border: 1px solid blue; } #img img {width: 400px; } </style> <script type="text/javascript" src="../dlGeometry.js"></script> <script type="text/javascript" src="../jquery-1.4.4.js"></script> <script type="text/javascript" src="jquery.svg.js"></script> <script type="text/javascript"> $(function() { var geom = dlGeometry(); var svg = $('#svgbasics'); var $div = $('#img img'); var divrect = geom.rectangle($div); divrect.addPosition({x: -1, y: -1}).adjustDiv(svg); svg.svg({onLoad: drawInitial}); $('button').click(drawShape); }); function drawInitial(svg) { svg.circle(75, 75, 50, {fill: 'none', stroke: 'red', 'stroke-width': 3}); var g = svg.group({stroke: 'black', 'stroke-width': 2}); svg.line(g, 15, 75, 135, 75); svg.line(g, 75, 15, 75, 135); svg.configure({viewPort: '0 0 100 100', overflow: 'visible' }, false); } var colours = ['purple', 'red', 'orange', 'yellow', 'lime', 'green', 'blue', 'navy', 'black']; function drawShape() { var shape = this.id; var svg = $('#svgbasics').svg('get'); if (shape == 'rect') { svg.rect(random(300), random(200), random(100) + 100, random(100) + 100, {fill: colours[random(9)], stroke: colours[random(9)], 'stroke-width': random(5) + 1}); } else if (shape == 'line') { svg.line(random(400), random(300), random(400), random(300), {stroke: colours[random(9)], 'stroke-width': random(5) + 1}); } else if (shape == 'circle') { svg.circle(random(300) + 50, random(200) + 50, random(80) + 20, {fill: colours[random(9)], stroke: colours[random(9)], 'stroke-width': random(5) + 1}); } else if (shape == 'ellipse') { svg.ellipse(random(300) + 50, random(200) + 50, random(80) + 20, random(80) + 20, {fill: colours[random(9)], stroke: colours[random(9)], 'stroke-width': random(5) + 1}); } else if (shape == 'clear') { svg.clear(); } else if (shape == 'zoom') { svg.clear(); } } function random(range) { return Math.floor(Math.random() * range); } </script> </head> <body> <h1>jQuery SVG</h1> <div id="img"> <img src="peterskuppel.jpg" /> </div> <div id="svgbasics"></div> <p> <button id="rect">Add rectangle</button> <button id="line">Add line</button> <button id="circle">Add circle</button> <button id="ellipse">Add ellipse</button> <button id="zoom">Zoom</button> <button id="clear">Clear</button> </p> </body> </html>