我正在动态绘制 svg 形状,我需要将悬停和单击侦听器附加到元素。出于某种原因,我无法让它工作。
我正在创建这样的svg:
function svgCreator(){
var objectName = this.name;
$('#container').append('<svg><path class="overlay" id="path_' +objectName +'"d="M5,723,5,716,205,612,226,717" /></svg>')
}
后来我尝试附加悬停和单击事件:
function svgHover(){ //svgHover is a method of a generic object
var hotspotObject =this; //hotspotObject is storing the current object as a variable
this.hotspotSvg.hover( //hotspotSvg is simply $('#path_' +this.name);
function() {
alert('hovering');
},
function() {
$("#outlines").hide();
}
).click(function() {
alert('You clicked me');
});
};
编辑:问题得到了解决,这根本不是因为 svg,而是因为我错误地附加了事件侦听器。我犯了责怪 svg 的错误,因为这是我正在尝试的全新事物。