目前我有一個raphael創建的競技場地圖,每個svg元素在地圖上有一個工具提示時,懸停。工具提示不會顯示在svg元素的第一個懸停上,但會顯示用戶是否再次輸入svg元素。拉斐爾JS工具提示不顯示在第一次懸停
我認爲它與我的addTip「mouseeneter」函數有關,但我對理解JS還是一個新東西,所以我不確定。下面是我使用添加工具提示的SVG元素上懸停的代碼,我使用的代碼是基於關閉此stackoverflow forum question和的jsfiddle我創建link
var tip = $("#tip").hide();
var tipText = "Tip the Canoe.";
var over = false;
function addTip(node, txt)
{
$(node).mouseenter(function(){
tipText = txt;
tip.fadeIn();
over = true;
})
.mouseleave(function(){
tip.fadeOut();
over = false;
});
}
for (var i = 0, len = rsrGroups.length; i < len; i++) {
var el = rsrGroups[i];
el.mouseover(function() {
addTip(this.node, tipText);
console.log(node);
this.toFront();
this.attr({
cursor: 'pointer',
fill: '#990000',
});
//alert('test');
});
el.mousemove(function(e){
if (over){
tip.css("left", e.clientX+20).css("top", e.clientY+20);
tip.text(tipText);
}
});
el.mouseout(function() {
this.attr({
fill: '#003366'
});
});
el.click(function() {
this.attr({
fill: 'green'
});
});
}
你能隔離這個發生故障的片段jsfiddle嗎? – pp19dd
我實際上已經有了這個東西[在這裏](http://jsfiddle.net/knottAverage/ArKDp/16/) – user1431083