我有一个图表,在悬停时显示工具提示(字符串).有没有办法控制工具提示显示给用户的延迟/时间?
<asp:Chart runat="server" ID="Chart2" Width="340px" Height="265px">
<!--Define Things in here-->
</asp:Chart>
Run Code Online (Sandbox Code Playgroud)
后端:
//define what rec is
string tooltip = rec;
Chart2.ToolTip = tooltip;
Run Code Online (Sandbox Code Playgroud)
我从这里借来的一些Javascript帮助我想出了一个非常简单的解决这个经典问题的方法:http://bonrouge.com/~js_tooltip
Asp.NET将工具提示呈现为生成的实际HTML页面上的标题属性.你可以利用这个事实将你喜欢的任何样式应用到工具提示中,方法是用两个非常简单的javascript函数覆盖它.
function showTooltip(control) {
var ttext = control.title;
var tt = document.createElement('SPAN');
var tnode = document.createTextNode(ttext);
tt.appendChild(tnode);
control.parentNode.insertBefore(tt, control.nextSibling);
tt.className = "tooltipCss";
control.title = "";
}
function hideTooltip(control) {
var ttext = control.nextSibling.childNodes[0].nodeValue;
control.parentNode.removeChild(control.nextSibling);
control.title = ttext;
}
Run Code Online (Sandbox Code Playgroud)
接下来,您需要为工具提示设计css:
position:absolute;
border:1px solid gray;
width:300px;
margin:1em;
padding:3px;
background: Red;
Run Code Online (Sandbox Code Playgroud)
最后,您需要将JavaScript连接到您的控件
Chart2.Attributes.Add("onmouseover", "showTooltip(this)");
Chart2.Attributes.Add("onmouseout", "hideTooltip(this)");
Run Code Online (Sandbox Code Playgroud)
希望这会有所帮助....我一直在寻找一种简单的方法来为我所有的Asp.Net工作提供多年的工具提示.我不喜欢在单独的跨度或其他任何内容中声明我的Tooltip代码,因为这对我动态生成的东西真的没有用.无论如何,我只是想在网上添加这个.希望它可以帮助别人.
| 归档时间: |
|
| 查看次数: |
7253 次 |
| 最近记录: |