SVG рдЧреНрд░рд╛рдлрд╝рд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП jQuery рдкреНрд▓рдЧрдЗрдиред рднрд╛рдЧ 1

рдПрд╕рд╡реАрдЬреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдбреНрд░рд╛рдЗрдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИрдВред рд╣рдо jQuery рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрди рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред

рдкрд░рд┐рдЪрдп


рдХреАрде рд╡реБрдб рдкреНрд▓рдЧрдЗрди рдХреЗ рд▓реЗрдЦрдХ, рд╕рд┐рдбрдиреА, рдСрд╕реНрдЯреНрд░реЗрд▓рд┐рдпрд╛ рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВред рдПрдХ рдЬрд╛рд╡рд╛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдлреЗрдпрд░рдлреИрдХреНрд╕ рдореАрдбрд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рддред рдЗрди рд╡рд░реНрд╖реЛрдВ рдореЗрдВ, jQuery рд╕рдореБрджрд╛рдп рдореЗрдВ рдпреЛрдЧрджрд╛рди рд░рд╣рд╛ рд╣реИред JQuery рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдкрд░ рдПрдХ рдкреБрд╕реНрддрдХ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

Jquery.svg.js рдкреНрд▓рдЧрдЗрди рдЖрдкрдХреЛ рдПрд╕рд╡реАрдЬреА 1.1 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡реЗрдХреНрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг
рд╕рдВрджрд░реНрдн рдкреНрд░рд▓реЗрдЦрди

рдкреНрд▓рдЧрдЗрди рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реНрдЯрд╛рдЗрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рд╣реЗрдб рднрд╛рдЧ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдХреЛ рд▓рд┐рдЦрддреЗ рд╣реИрдВред
<style type="text/css">@import "jquery.svg.css";</style> <script type="text/javascript" src="jquery.svg.js"></script> 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдкреНрд▓рдЧ-рдЗрди рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
 <script type="text/javascript" src="jquery.svganim.js"></script> 

рд╣рдо рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдПрд╕рд╡реАрдЬреА рдХреИрдирд╡рд╛рд╕ рдХреЛ div рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рддреЗ рд╣реИрдВ
 $(selector).svg(); 

рдЪрдпрдирдХрд░реНрддрд╛ - рдЖрдИрдбреА рдЯреИрдЧ рдХреА рд╕рдВрдкрддреНрддрд┐
svg () рдПрдХ рдкреНрд▓рдЧрдЗрди рдлрдВрдХреНрд╢рди рд╣реИред

рдХреИрдирд╡рд╛рд╕ рдХреЗ рд╕рд╛рде рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝рддреЛрдбрд╝ рд╕рдВрднрд╡ рд╣реИрдВ:


рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрд╕рд╡реАрдЬреА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреЛрдб рдФрд░ jQuery рдкреНрд▓рдЧрдЗрди рдХреЛрдб рджреЗрдЧрд╛ред

рдПрд╕рд╡реАрдЬреА рдХреЛрдб
 <rect x="20" y="50" width="100" height="50" fill="yellow" stroke="navy" stroke-width="5" /> <rect x="150" y="50" width="100" height="50" rx="10" fill="green" /> <g transform="translate(270 80) rotate(-30)"> <rect x="0" y="0" width="100" height="500" rx="10" fill="none" stroke="purple" stroke-width="3" /> </g> <circle cx="70" cy="220" r="50" fill="red" stroke="blue" stroke-width="5" /> <g transform="translate(175 220)"> <ellipse rx="75" ry="50" fill="red" /> </g> <ellipse transform="translate(300 220) rotate(-30)" rx="75" ry="50" fill="none" stroke="blue" stroke-width="10" /> <g stroke="green" > <line x1="450" y1="120" x2="550" y2="20" stroke-width="5" /> <line x1="550" y1="120" x2="650" y2="20" stroke-width="10" /> <line x1="650" y1="120" x2="750" y2="20" stroke-width="15" /> <line x1="750" y1="120" x2="850" y2="20" stroke-width="20" /> <line x1="850" y1="120" x2="950" y2="20" stroke-width="25" /> </g> <polyline fill="none" stroke="blue" stroke-width="5" points="450,250 475,250 475,220 500,220 500,250 525,250 525,200 550,200 550,250 575,250 575,180 600,180 600,250 625,250 625,160 650,160 650,250 675,250" /> <polygon fill="lime" stroke="blue" stroke-width="10" points="800,150 900,180 900,240 800,270 700,240 700,180" /> 

jQuery.SVG рдореЗрдВ рдПрдХ рд╣реА рдбреНрд░рд╛рдЗрдВрдЧ рдХреЛрдб
 svg.rect(20, 50, 100, 50, {fill: 'yellow', stroke: 'navy', strokeWidth: 5}); svg.rect(150, 50, 100, 50, 10, 10, {fill: 'green'}); var g = svg.group({transform: 'translate(270 80) rotate(-30)'}); svg.rect(g, 0, 0, 100, 50, 10, 10, {fill: 'none', stroke: 'purple', strokeWidth: 3}); svg.circle(70, 220, 50, {fill: 'red', stroke: 'blue', strokeWidth: 5}); var g = svg.group({transform: 'translate(175 220)'}); svg.ellipse(g, '', '', 75, 50, {fill: 'yellow'}); svg.ellipse('', '', 75, 50, {transform: 'translate(300 220) rotate(-30)', fill: 'none', stroke: 'blue', strokeWidth: 10}); var g = svg.group({stroke: 'green'}); svg.line(g, 450, 120, 550, 20, {strokeWidth: 5}); svg.line(g, 550, 120, 650, 20, {strokeWidth: 10}); svg.line(g, 650, 120, 750, 20, {strokeWidth: 15}); svg.line(g, 750, 120, 850, 20, {strokeWidth: 20}); svg.line(g, 850, 120, 950, 20, {strokeWidth: 25}); svg.polyline([[450,250], [475,250],[475,220],[500,220],[500,250], [525,250],[525,200],[550,200],[550,250], [575,250],[575,180],[600,180],[600,250], [625,250],[625,160],[650,160],[650,250],[675,250]], {fill: 'none', stroke: 'blue', strokeWidth: 5}); svg.polygon([[800,150],[900,180],[900,240],[800,270],[700,240],[700,180]], {fill: 'lime', stroke: 'blue', strokeWidth: 10}); 

Source: https://habr.com/ru/post/In185750/


All Articles