Javascript 使用jQuery获取SVG中锚定的href值
我正在使用jQuery以我创建的SVG图像中的锚元素为目标,以获取分配给锚元素的href值。然后,我尝试打开和关闭一段内容,该内容的HTML ID与锚元素的href相同Javascript 使用jQuery获取SVG中锚定的href值,javascript,html,jquery,svg,Javascript,Html,Jquery,Svg,我正在使用jQuery以我创建的SVG图像中的锚元素为目标,以获取分配给锚元素的href值。然后,我尝试打开和关闭一段内容,该内容的HTML ID与锚元素的href相同 jQuery(文档).ready(函数($){ $('.ghb_toggle').hide() $('object')。在(“加载”(evt)=>{//等待页面已完全加载 const svg_doc=$(“对象”)[0].contentDocument; $('a[xlink\\\:href^=“#”]”,svg_doc) .
jQuery(文档).ready(函数($){
$('.ghb_toggle').hide()
$('object')。在(“加载”(evt)=>{//等待页面已完全加载
const svg_doc=$(“对象”)[0].contentDocument;
$('a[xlink\\\:href^=“#”]”,svg_doc)
.on(“单击”,evt)=>{
target=evt.currentTarget.href;
console.log(target);//用于调试目的
$(target.toggle();
});
});
});代码>
内容1
内容2
MDN文档中的content3
SVGAnimatedString.animVal只读这是一个表示
动画值。如果给定的属性或属性是
动画它包含属性或属性的当前动画值
财产。如果给定的属性或属性当前未被
已设置动画,它包含与baseVal相同的值
SVGAnimatedString.baseVal这是一个表示基的DOMString
价值应用任何属性之前给定属性的基值
动画
因此,您成功地获得了所需的信息,但它看起来像一个包含两个条目的对象。尝试使用target.baseVal提取实际目标值
(很抱歉,我无法在实际系统上测试此功能)。jQuery设计用于HTML,而不是SVG。有时候jQuery确实可以工作(当SVG和HTML以相同的方式运行时)。通常不会。在代码段中,没有任何
标记,也没有任何带有href
的节点。您可以更新代码片段来演示问题吗?一个示例来演示问题,而不是整个SVG。请阅读。svganizatedstring{baseVal:“#排水沟落水管”,animVal:“#排水沟落水管”}
不是jquery选择器的有效条目-如果您使用.href
获得该条目,请尝试href.baseVal
相关,但可能不是直接重复:叮叮叮叮!非常感谢你!这很有魅力。