JS实现一个提示框跟随鼠标移动的问题。。。。
要实现提示框跟随鼠标移动而移动的JS不难,我写的是这样:
————————————————————————————————————————————
<STYLE>
div
{
BORDER: #CCCCCC 1px solid;
background-color:#FFFFEF;
display:none;
LINE-HEIGHT: 30px;
FONT-FAMILY: 宋体;
font-size:12px;
POSITION: absolute;
TOP:30px;
LEFT:30px;
}
</STYLE>
<body>
<SCRIPT language = "JavaScript">
function showTip()
{
editTip.style.top = event.y + 15;
editTip.style.left = event.x + 12;
editTip.style.display = "block";
}
function hide()
{
editTip.style.display = "none";
}
document.ondblclick=hide;
</SCRIPT>
<a href="#" onMouseOver="showTip()" onMouseMove="showTip()" onMouseOut="editTip.style.display = 'block';">Click</a>
</body>
<DIV id="editTip"><script>document.write("请单击某个单元格进行编辑!双击消失");</script></DIV>
————————————————————————————————————————————
有个问题,如果[单纯用JS]怎样实现这样的效果??????
我写的这个JS老是说没有对象:
<script language="javascript" type="text/javascript">
<!--
function showTip(strTip)
{
var TipHead = "<div id='divTip' style='display:none;position:absolute;'>";
var TipTail = "</div>";
var tip = TipHead + strTip + TipTail;
style.top = event.y+15;
style.left = event.x+12;
style.display = "block";
}
-->
</script>
其实就是想把要显示的内容包含起来,通过调用showTip("Hello")来实现动态改变提示框的内容。。。
不知道怎么办了。。急!!
问题点数:50、回复次数:8Top
1 楼xjdawu(无法界定)回复于 2005-08-22 16:51:11 得分 50
先创建对象,才能访问
---------------------------------------------
function showTip(strTip)
{
var TipDiv = document.createElement("<div id='divTip' style='display:none;position:absolute;'></div>")
document.body.appendChild(TipDiv)
TipDiv.innerHTML = strTip
with(TipDiv){
style.top = event.y+15;
style.left = event.x+12;
style.display = "block";
}
}
}Top
2 楼qiqunet(瑞旗·广东)回复于 2005-08-22 16:55:54 得分 0
<STYLE>
div
{
BORDER: #CCCCCC 1px solid;
background-color:#FFFFEF;
display:none;
LINE-HEIGHT: 30px;
FONT-FAMILY: 宋体;
font-size:12px;
POSITION: absolute;
TOP:30px;
LEFT:30px;
}
</STYLE>
<body>
<SCRIPT language = "JavaScript">
function showTip(tip)
{
editTip.style.top = event.y + 15;
editTip.style.left = event.x + 12;
editTip.style.display = "block";
editTip.innerText=tip;
}
function hide()
{
editTip.style.display = "none";
}
document.ondblclick=hide;
</SCRIPT>
<a href="#" onMouseOver="showTip(this.innerText)" onMouseMove="showTip(this.innerText)" onMouseOut="editTip.style.display = 'block';">Click</a>
</body>
<DIV id="editTip"><script>document.write("请单击某个单元格进行编辑!双击消失");</script></DIV>
Top
3 楼xjdawu(无法界定)回复于 2005-08-22 16:57:29 得分 0
其实不必如此,可直接用editTip.innerHTML = strTip 来动态改变tip中的内容Top
4 楼BaSaRa_GIT(BaSaRa_GIT)回复于 2005-08-22 16:58:52 得分 0
谢谢了,开始怎么都想不起来怎么做:)
谢谢!Top
5 楼qiqunet(瑞旗·广东)回复于 2005-08-22 16:59:04 得分 0
不可能每次调用都创建一个DIV吧?
只创而不杀,网页最后会有什么结果呢?·#
Top
6 楼BaSaRa_GIT(BaSaRa_GIT)回复于 2005-08-22 17:21:49 得分 0
qiqunet(瑞旗·广东) 说的没错。。。Top
7 楼BaSaRa_GIT(BaSaRa_GIT)回复于 2005-08-22 17:33:52 得分 0
问题还没解决,只创建不删除浏览器差点挂了。。。
ShowTip(strTip)是通过strTip来传递要显示的消息,[其实不必如此,可直接用editTip.innerHTML = strTip 来动态改变tip中的内容]这样的话要设置一个<div id="editTip"></div>,我不想设置这个<div>,只想通过JS脚本设置这个<div>,然后通过参数strTip来改变提示框内容。。。
一时激动,结帐快了点,晕~~~Top
8 楼qiqunet(瑞旗·广东)回复于 2005-08-22 23:13:34 得分 0
呵呵
说真心的那一句,我为我的答案得不到任何的分值而颇感伤心
就如考试一样,得分为0说明我的答案错了
然而再三思考,我的两个贴子好象都没有什么错
我唯有反思,我的理解出了问题,我未能理解出题者的深意 :)
我是很相信缘份的,我只好将一些我没有错而被老师打了零分的情况归咎于彼此无缘
Top




