0
我在应用程序中使用jquery 1.11.3,但jquery 1.11.3似乎不想访问SVG中的元素。这可能吗。我不明白为什么不。如何让旧的jquery版本访问SVG元素
使用jQuery的1.11.3 - 不工作(更新,现在使用的版本1.12.4和它的作品)
http://codepen.io/omarel/pen/zNMJOJ
使用jQuery的3.1 - 工程
http://codepen.io/omarel/pen/XpyBOq
UPDATE: 感谢@Rikin我意识到我可以使用版本1.12.4开始向SVG添加类名,幸运的是这个版本与我正在使用的应用程序一起工作。
JQUERY
$(".amenitylink").on("click", function() {
$('svg #lobby').toggleClass("highlight");
});
HTML
<div class="amenitylink">click me</div>
<svg version="1.1" id="main" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="276px" height="210px" viewBox="0 0 276 210" style="enable-background:new 0 0 276 210;" xml:space="preserve">
<style type="text/css">
<![CDATA[
.st0{fill:none;stroke:#FFFFFF;stroke-width:11;stroke-miterlimit:10;}
]]>
</style>
<rect id="lobby" x="13" y="17" class="st0 " width="240" height="179"/>
</svg>
CSS
body {
background-color:#000;
color:#fff;
}
.amenitylink {
cursor:pointer;
padding:10px;
border:1px solid white;
}
.highlight {
fill:rgba(134, 117, 77, 0.4) !important;
}
它确实针对SVG元素,但无法在其中添加类名。可能是一个已知的问题,然后在jQuery的更高版本中修复。 – Rikin
非常感谢。尽管没有答案,但您的评论允许我通过添加类名的版本。我发现1.12.4,它仍然与我的应用程序兼容!谢谢 – obreezy