我有一个html图像,在悬停时应显示工具提示。工具提示的文本是根据某些模型属性动态设置的。但是,当我悬停时,悬停功能正在执行,但我不是能够看到相同的工具提示。下面是代码。
$('#img2').hover(function(){
console.log("on hover image2");
var oldregion=null;var newregion=null;var startdate=null;
oldregion=${oldregion};
newregion=${newregion};
startdate=${startdate};
document.getElementById('img2').title='Location changed from '+ '${oldregion}' +' to '+ '${newregion}' +' on '+ '${startdate}';
});
正在打印“悬停图像2”,但不会显示应显示为工具提示的“位置已更改为...”文本。$ {oldregion},$ {newregion},$ {startdate}是模型属性来自弹簧控制器,它的值正在变化。但是,工具提示没有显示动态文本。
请帮帮我。
谢谢, Poorna。
答案 0 :(得分:0)
工具提示可能背后图像。确保图像是JLabel,因为工具提示适用于JLabel。解决此问题的方法是使用玻璃窗格。您可以阅读大约一个here基本上它使图像位于一个小虚拟玻璃后面,您可以将鼠标悬停在它上面,工具提示将显示在窗格上方。
JPanel glass = ((JPanel) imagejlabelname.getGlassPane()); //Glasspane
glass.setVisible(true);
现在,如果您想在图像和工具提示上进行交互以仅在某些图像上显示,请确保将图像放在JPanel中,并相应地调整大小。然后,您可以将鼠标侦听器添加到JPanel的特定部分。
public void mouseMoved(MouseEvent event) {
**Inherited classes go here unless abstract**
}
基本上,您有多种方法可以做到这一点。如果你想要一个快速的工具提示,只要你把它放在图像上就会显示,你应该使用我的第二个方法,鼠标监听器。
〜富