目前页面是这样的:
一个多行多列的表格,上面排列着很多图片和文字。
要实现效果:
当鼠标滑到某张图片或某段文字上时,显示出详细信息(就是再弹一DIV,这个没问题)DIV上有超链可以点。DIV位置要随着滑过的图片位置不同而改变。现在问题:
1、只用onmouseover事件的话,弹出的DIV不会消失,会挡住其他图片。如果加上onmouseout事件隐藏DIV,这样又会点不到DIV上的超链,因为离开图片DIV就消失了。如何解决?
2、DIV我定义为绝对位置,根据鼠标位置来变化,给DIV定位方法我写到了图片的onmouseover中。但图片是有范围的,在图片范围内移动鼠标,这个DIV也会跟着动,怎么让DIV不动,只有在移动到下一张图片的时候再改变位置?我想过根据图片位置定位。但其中还有很多文字,文字位置获取不到啊。而且就是获取到了,文字如果很长的话,DIV也会随鼠标动的。目前就这两个问题,各位给看看,谢谢了
一个多行多列的表格,上面排列着很多图片和文字。
要实现效果:
当鼠标滑到某张图片或某段文字上时,显示出详细信息(就是再弹一DIV,这个没问题)DIV上有超链可以点。DIV位置要随着滑过的图片位置不同而改变。现在问题:
1、只用onmouseover事件的话,弹出的DIV不会消失,会挡住其他图片。如果加上onmouseout事件隐藏DIV,这样又会点不到DIV上的超链,因为离开图片DIV就消失了。如何解决?
2、DIV我定义为绝对位置,根据鼠标位置来变化,给DIV定位方法我写到了图片的onmouseover中。但图片是有范围的,在图片范围内移动鼠标,这个DIV也会跟着动,怎么让DIV不动,只有在移动到下一张图片的时候再改变位置?我想过根据图片位置定位。但其中还有很多文字,文字位置获取不到啊。而且就是获取到了,文字如果很长的话,DIV也会随鼠标动的。目前就这两个问题,各位给看看,谢谢了
2.你可以对这个div的DOM对象设一个flag,如element.yourflag,在onmouseover中显示div后设为true,在onmouseout设为false
1)
onmouseover=显示DIV
onmouseout=function(){timer=setTimeout(隐藏DIV,300)}DIV:
onmouseover=clearTimeout(timer)
onmouseout=隐藏DIV2)
DIV位置=对象的top+修正值/left+修正值
--对象=<img>/<span>文字</span>
第一个问题一定要用settimeout吗?这样鼠标离开图片后过一段时间DIV自动关闭
可这样也不行啊 起码要求鼠标在DIV上时一直都不能关闭。
用TIME倒是也可以,我回去试试,
2L朋友,第2个问题我没看太懂,是即时的减去鼠标当前位置和最开始位置的差么?
我用.tt img{ star : expression(onmouseover=aa())} 还出错,,是不是我写错了?
显示图片的表格也是在一个DIV上,我是用父DIV引用的这个样式表,但现在鼠标只要经过这个div的范围就会触发事件,
应该是经过图片才能出发啊