网页教学网
 当前位置: 网页教学网 >> 网页制作 >> JavaScript技术应用 >> 阅读:制作类似于Title、ALT的提示效果
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

制作类似于Title、ALT的提示效果

http://www.webjx.com  更新日期:2005-02-24 09:28  出处:网页教学网  作者:
在网页中,有时我们将鼠标移到图片上,或者文字链接处,会出现文字型的提示信息。一般制作这样的效果极为简单,只需在图片代码中加入<Alt="文字提示信息">或者在文字链接代码中加入<Title="文字提示信息">。仔细观察一下,感觉出现的信息总有时间上的停顿。如何制作类似于网页教学网首页文字超链接的提示信息的效果呢?

制作方法一:加入JS代码
1、在页面的<head></head>中加入JS代码:
<script language="javascript">
var tipTimer;
function locateObject(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=locateObject(n,d.layers[i].document); return x;
}

function hideTooltip(object)
{
if (document.all)
{
locateObject(object).style.visibility="hidden"
locateObject(object).style.left = 1;
locateObject(object).style.top = 1;
return false
}
else if (document.layers)
{
locateObject(object).visibility="hide"
locateObject(object).left = 1;
locateObject(object).top = 1;
return false
}
else
return true
}

function showTooltip(object,e, tipContent, backcolor, bordercolor, textcolor, displaytime)
{
window.clearTimeout(tipTimer)

if (document.all)
{
locateObject(object).style.top=document.body.scrollTop+event.clientY+20

locateObject(object).innerHTML='<table style="font-family: Verdana,Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; border: '+bordercolor+'; border-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; background-color: '+backcolor+'" width="10" border="0" cellspacing="1" cellpadding="1"><tr><td nowrap><font style="font-family: Verdana,Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; color: '+textcolor+'">'+unescape(tipContent)+'</font></td></tr></table> '

if ((e.x + locateObject(object).clientWidth) > (document.body.clientWidth + document.body.scrollLeft))
{
locateObject(object).style.left = (document.body.clientWidth + document.body.scrollLeft) - locateObject(object).clientWidth-10;
}
else
{
locateObject(object).style.left=document.body.scrollLeft+event.clientX
}
locateObject(object).style.visibility="visible"
tipTimer=window.setTimeout("hideTooltip('"+object+"')", displaytime);
return true;
}
else if (document.layers)
{
locateObject(object).document.write('<table width="10" border="0" cellspacing="1" cellpadding="1"><tr bgcolor="'+bordercolor+'"><td><table width="10" border="0" cellspacing="0" cellpadding="2"><tr bgcolor="'+backcolor+'"><td nowrap><font style="font-family: Verdana,Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; color: '+textcolor+'">'+unescape(tipContent)+'</font></td></tr></table></td></tr></table>')
locateObject(object).document.close()
locateObject(object).top=e.y+20

if ((e.x + locateObject(object).clip.width) > (window.pageXOffset + window.innerWidth))
{
locateObject(object).left = window.innerWidth - locateObject(object).clip.width-10;
}
else
{
locateObject(object).left=e.x;
}
locateObject(object).visibility="show"
tipTimer=window.setTimeout("hideTooltip('"+object+"')", displaytime);
return true;
}
else
{
return true;
}
}
</script>
注意红色字体部分,可以对出现的提示信息进行字体的格式化与提示框的控制,不包括对文字颜色的修改。
2、在<body></body>中插入代码:
<div id="dHTMLToolTip" style="position: absolute; visibility: hidden; width:10; height: 10; z-index: 1000; left: 0; top: 0"></div>
3、在文字超链接处加入代码:
onMouseOver="showTooltip('dHTMLToolTip',event, '文字提示信息部分', '#fffff2','#000000','#000000','20000')" onMouseOut="hideTooltip('dHTMLToolTip')"
红色字体部分为你需加注的提示信息内容;
注意加粗部分:
#fffff2为弹出信息框的背景色;
#000000为弹出信息框的边框颜色;
#000000为提示信息的文字颜色;
20000为控制的显示时间。

制作方法二:使用dHTML Tooltip插件
如果感觉使用代码繁烦的话,可以借助DW中的dHTML Tooltip插件,制作就更为方便快捷了。下载后,使用插件管理器安装,然后选择对象,在行为窗口选择Tooltip就可以制作出效果。我们这里就不进行详细的介绍了,使用过程中有什么疑问可在我们留言本进行咨询!
下载dHTML Tooltip插件
关键词:
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为