显示内容长时,显示部分内容,鼠标移入显示全部内容

发布于 2022-09-09 21:12:43 字数 4606 浏览 9 评论 0

转:王晓成

显示内容长时,显示部分内容,鼠标移入显示全部内容




实现思想:

  在页面内放入一个Div, 调用lable的onMouseover,onMouseout 事件,然后用JS去实现显示部分内容在原有位置还是显示全部内容在Div中。

    后台代码:

  1.     string answer = e.Row.Cells[10].Text;
  2.                               if (answer.Length > 5)
  3.                               {
  4.                                                         e.Row.Cells[10].Text = string.Format("<label onMouseover="ddrivetip('{0}','#FFFFE1', 300)" onMouseout='hideddrivetip()'>{1}...</label>", answer, answer.Substring(0, 5));
复制代码前台代码:
  1. <div id="dhtmltooltip"  style="width:550px "></div>
  2. <script type="text/javascript">
  3. var offsetxpoint=0 //Customize x offset of tooltip
  4. var offsetypoint=20 //Customize y offset of tooltip
  5. var ie=document.all
  6. var ns6=document.getElementById && !document.all
  7. var enabletip=false
  8. if (ie||ns6)
  9. var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""
  10. function ietruebody(){
  11. return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
  12. }
  13. function ddrivetip(thetext, thecolor, thewidth){
  14. if (ns6||ie){
  15. if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px"
  16. if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor
  17. tipobj.innerHTML=thetext
  18. enabletip=true
  19. return false
  20. }
  21. }
  22. function positiontip(e){
  23. if (enabletip){
  24. var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
  25. var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
  26. var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
  27. var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20
  28. var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000
  29. if (rightedge<tipobj.offsetWidth)
  30. tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" :

  31. window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
  32. else if (curX<leftedge)
  33. tipobj.style.left="5px"
  34. else
  35. tipobj.style.left=curX+offsetxpoint+"px"
  36. if (bottomedge<tipobj.offsetHeight)
  37. tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" :

  38. window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px"
  39. else
  40. tipobj.style.top=curY+offsetypoint+"px"
  41. tipobj.style.visibility="visible"
  42. }
  43. }
  44. function hideddrivetip(){
  45. if (ns6||ie){
  46. enabletip=false
  47. tipobj.style.visibility="hidden"
  48. tipobj.style.left="-1000px"
  49. tipobj.style.backgroundColor=''
  50. tipobj.style.width=''
  51. }
  52. }
  53. document.onmousemove=positiontip
  54. </script>
复制代码实现效果:

   鼠标移入67396...,会显示全部内容。

1.jpg (71.82 KB, 下载次数: 15)

下载附件

2011-03-11 11:10 上传

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文