は、これはこれは、SVGにsvg inner idにアクセスしてCSSがそのidの塗りつぶし色を変更する方法を教えてください。
<div>
<object id="objsvg" class="svgbtn" type="image/svg+xml" data="next.svg" onclick="changeSVGColor()"></object>
</div>
を表示するには、私の基本的なHTMLである私のSVGファイル
next.svg
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="style.css"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" enable-background="new 0 0 100 100" xml:space="preserve">
<g class="next">
<g>
<polygon fill="#FFD92D" class="inner" points="20.587,5.055 78.706,48 20.587,90.945"/>
<path fill="#FF9900" class="outer" d="M21.623,7.11L76.961,48L21.623,88.89V7.11 M19.55,3v90l60.9-45L19.55,3L19.55,3z"/>
</g>
</g>
</svg>
ですこれは私のstyle.cssファイルである
.inner {
fill: #000000;
}
.inner-new-color {
fill: #ff00ff;
}
これはsvgファイルの.innerの色を変更するための私の基本的なjQueryです。私は間違って何をしていますか?
$ objsvg。hasClass( "inner"))以降、#objsvgセレクタが内部クラスをまったく持っていないように見えることさえありません。 falseを返します。
function changeSVGColor() {
$("#objsvg").removeClass("inner");
$("#objsvg").addClass("inner-new-color");
}
組み込みに私の[SVG液](http://stackoverflow.com/questions/25002310/best-practice-for-using-svg-images/25032941#25032941)をチェックし、そのコーディングを再利用する。その後、SVGの部分を更新し、コードを微調整します。 –