最初に、クリックされたボタンの親が同じパスのクラスを持っているかどうかを確認しています。パスクラスが親のクリックされたボタンクラスに一致する場合は、パス自体にクラスを追加する必要があります。svgパスにクラスを追加するには?
<ul>
<li class="modern">
<button>Ex 1</button>
</li>
<li class="classic">
<button>Ex 2</button>
</li>
<ul>
<svg>
<path class="modern"></path>
<path class="classic"></path>
</svg>
$("button").on("click", function() {
var periodClass = $(this).parent().attr("class");
$("svg path").each(function() {
$("svg path").not('.'+periodClass).removeClass("active");
$('svg path.'+periodClass).target.classList.add('active');
});
});
はまた、あなたの属性を使用する必要がありますので、jQueryのSVGにクラスを追加することはできません
$('svg path.'+periodClass).addClass('active');
可能な複製( http://stackoverflow.com/questions/36130050/add-class-on-svg-path-element) – Venugopal
http://stackoverflow.com/questions/36130050/add-class-on-svg-path-element – Venugopal
これを試してみました。しかし、ここではうまくいきません。上記のコードは、人から言われたことを反映しています。私はどこに "e"を定義するかわからないので、ここにはありません。私の場合 –