2012-02-20 84 views
0

我正在嘗試修改一個帶有jQuery SVG的SVG文件。我用Inkscape來繪製我的SVG文件 - 然後編輯刪除非nessesary代碼。jQuery SVG修改非內嵌/內聯SVG文件

HTML

<!DOCTYPE html> 

<html lang="en"> 
    <head> 
     <style type="text/css">@import "jquery.svg.css";</style> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
     <script type="text/javascript" src="jquery.svg.js"></script> 
     <script type="text/javascript" src="jquery.svgdom.js"></script> 
    </head> 
    <body> 
     <div id="svgContainter"> 
      <object type="image/svg+xml" data="logo.13.svg"></object> 
     </div> 
    </body> 
</html> 

SVG

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<svg 
    xmlns:osb="http://www.openswatchbook.org/uri/2009/osb" 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
    xmlns:cc="http://creativecommons.org/ns#" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:svg="http://www.w3.org/2000/svg" 
    xmlns="http://www.w3.org/2000/svg" 
    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 
    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 
    width="314" 
    height="272" 
    id="svg2" 
    version="1.1" 
    inkscape:version="0.48.2 r9819" 
    sodipodi:docname="logo.13.svg"> 
    <g 
    inkscape:groupmode="layer" 
    id="layer12" 
    inkscape:label="GS Outline S" 
    style="display:inline"> 
    <path 
     style="fill:#fecf29;fill-opacity:0.39215686;stroke:#fecf29;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.58823529" 
     d="m 221.44046,109.42518 -9.20578,5.31496 -3.0686,-5.31496 -30.68594,0 -9.20578,15.94488 3.06859,5.31496 49.09751,0 9.20578,15.94488 -15.34297,26.5748 -42.96032,0 -6.13718,-10.62992 9.20578,-5.31496 3.06859,5.31496 30.68594,0 9.20578,-15.94488 -3.06859,-5.31496 -49.0975,0 -9.2058,-15.94488 15.34298,-26.574795 42.96032,0 z" 
     id="path4425" 
     inkscape:connector-curvature="0" /> 
    </g> 
</svg> 

我認爲所有我需要做的是在我的劇本是這樣的:

$("#path4425", svg.root()).attr('fill', "rgb(0,0,0)"); 

我讀過,jQuery的SVG不支持最新的jQuery,但我試圖使用1.4.4(我不知道我應該走多遠)。

我看過this post,裏面談到的是non-official patched version

我可以改變任何東西(HTML,JavaScript,SVG等)。任何幫助最受讚賞。

回答

0

我使用jQuery的SVG與外部文件,如:
$(...).svg({loadURL:'path/to/my.svg',...});

再後來就喜歡:
var $svg = $(SomeHtmlDOMelement).find('svg');
$svg.children().find('#Hour').attr('transform','rotate(12,50,50)');