工具提示不适用于html图像

时间:2015-09-12 03:33:32

标签: javascript java jquery html spring-mvc

我有一个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。

1 个答案:

答案 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**

}

基本上,您有多种方法可以做到这一点。如果你想要一个快速的工具提示,只要你把它放在图像上就会显示,你应该使用我的第二个方法,鼠标监听器。

〜富