jq只有获取元素相对于浏览器的
$(this)offset()left()忘了后边要不要小括号了
$(this)offset()top()
相对于父元素的话,把父元素的position设置成相对或绝对定位
然后documentgetElementById("dddd")offsetTop
documentgetElementById("dddd")offsetLeft
就是你要的了
这个一般是用css来显示特定内容的。
譬如有张iconpng,里面有很多内容,便可以在css中这么用。
sa
{width:20px;
height:20px;
overflow:hidden;
background:url(iconpng)
no-repeat
-20px
-30px;}
注解:
宽度和高度是控制显示范围的
overflow:hidden是确保不会有多余显示
background:url(iconpng)是使用作为背景显示,并且也只能作为背景显示才能达到这种做法的目的
no-repeat是不会重复,这个不是必须的,不过有会规范一些
-20px
-30px是的定位,显示时会将按这个坐标来定位
上面只是针对固定大小的显示内容来定义的,如果大小不固定,在background属性中有可能需要更改设置。不过重点是这种方式是这么使用的。
如果大小不固定,也可以这样定义,让背景自适应:
sa
{width:auto;
height:20px;
overflow:hidden;
background:url(iconpng)
no-repeat
right
bottom;}
对于2(首页标签)的内容,也是这么使用的:
a
{width:100px;
height:25px;
overflow:hidden;
background:url(2png)
no-repeat
left
center;}
a:hover
{background-position:right
center;}
这样一来,当鼠标移到元素时,背景定位发生变化,显示的内容便由左边的变成右边的了。
不过你应该对css这方面还不是很了解,目前可能还没有很便捷的方式对这些css进行快速定义,所以也只能告诉你是这么一回事,但未必能帮得上你。
获得鼠标的坐标,很简单,代码如下,你试试:
jQuery Code:
$('body')bind("mousemove",function(event){
$('#ss')html('The mouse cursor is at:( '+ eventpageX + ',' + eventpageY + ')');
});
Xhtml Code:
<div id="ss">The mouse cursor is at:</div>
附图一张,效果如下:
IE6 FF Chrome 下都没有问题哦 已经试过
我自己写的
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">
以上就是关于jquery 如何获取鼠标当前位置相当于父元素的坐标 而不是相对于浏览器全部的内容,包括:jquery 如何获取鼠标当前位置相当于父元素的坐标 而不是相对于浏览器、如何用JS/JQ实现,点击小图片显示大图片及详细信息的功能、jquery怎样定时捕捉鼠标坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)