取得鼠标的坐标方法:
/***
鼠标坐标位置
**/
function mousePosition(ev){
if(ev.pageX || ev.pageY){
return {x:ev.pageX, y:ev.pageY};
}
return {
//使用document.documentElement.scrollLeft 这个document.body.scrollLeft不精准
x:ev.clientX + document.documentElement.scrollLeft - document.documentElement.clientLeft,
y:ev.clientY + document.documentElement.scrollTop - document.documentElement.clientTop
};
}
/***
鼠标坐标位置
**/
function mouseMove(ev){
ev = ev || window.event;
var mousePos = mousePosition(ev);
x_size = mousePos.x
y_size = mousePos.y
//document.getElementById('xxx').value = mousePos.x;
//document.getElementById('yyy').value = mousePos.y;
}
document.onmousemove = mouseMove;
开始的时候我使用的是
document.body.scrollLeft
方法取得鼠标位置,但是如果页面出现滚动过,就会出现显示偏差,不是我想要的显示位置
其实只要使用document.documentElement.scrollLeft代替body就可以了,不过此时,你需要要在页面上
定义
<html xmlns="http://www.w3.org/1999/xhtml">
即可。
分享到:
相关推荐
火狐、谷歌、IE关于document.body.scrollTop和document.documentElement.scrollTop 以及值为0的问题
Vue中document.body.scrollTop的值总为零的解决办法 最近在做vue的时候监听页面滚动发现document.body.scrollTop一直为0 但是发现document.body.scrollTop一直是0。 查资料发现是DTD的问题。 页面指定了DTD,即指定...
用javascript地址栏显示源码: javascript:s=document.documentElement.outerHTML;document.write('<body></body>');document.body.innerText=s;
document.documentElement && document.documentElement.scrollTop
if (document.documentElement && document.documentElement.scrollTop) diffY = document.documentElement.scrollTop; else if (document.body) diffY = document.body.scrollTop else {/*Netscape ...
上次的测试说明了document.body属性并不会给我们返回预期的结果,比如我们用document.body.clientHeight原本想取得“页面可见区域高度”,可实际上返回的是“页面实际内容高度”。 那我们怎么办呢?难道加上了文档...
x = document.documentElement.scrollLeft; } else if(document.body) { // all other IE y = document.body.scrollTop; x = document.body.scrollLeft; } return {X:x, Y:y}; } function ...
对于document.compatMode,很多朋友可能都根我一样很少接触,知道他的存在却不清楚他的用途。其实这个对于我们开发兼容性的web页面还是很有帮助,我们都知道,盒模型的渲染在 Standards Mode和Quirks Mode是有很大...
body是DOM对象里的body子节点,即body标签,documentElement 是整个节点树的根节点root,详细介绍请看本文,感兴趣的朋友可以参考下
[removed] function shownode() { var ohtml = document.documentElement; //alert(ohtml.nodeName); //alert(ohtml.childNodes.length); //alert(ohtml.childNodes[1].nodeName); //获取...
一个对XmlDocument的DocumentElement 以及其属性Attributes进行访问的类库函数。
javascript 弹出层 function show(id,ev){/*--打开--*/ closeWindow(); var bWidth=parseInt(document.documentElement.scrollWidth); var bHeight=parseInt(document.documentElement.scrollHeight)(document....
var clientHeight = (document.body.clientHeight<document.documentElement.clientHeight)?document.body.clientHeight:document.documentElement.clientHeight; } else { var clientHeight = (document....
document.documentElement.scrollTop在Chrome里总为0document.body.scrollTop 在IE和firefox里总为01、各浏览器下 window.pageYOffset/document.documentElement.scrollTop/document.body.scrollTop的差异示例:...
地址栏显示源码.js地址栏显示源码.js地址栏显示源码.js
var left = document.documentElement.scrollLeft; var height = document.documentElement.clientHeight; var width = document.documentElement.clientWidth; return {top:top,left:left,height:height,...
举个例子: Css:假定进行如下简单设置;...} JS: 代码如下: function(){ window.scrollBy(0,100);... 附注:当滚动条到达页面最底部时,window.pageYOffset=1000-document.documentElement.clientHeight;
小球在桌面上自由移动,要清楚的几个问题 ...宽:document.documentElement.clientWidth || document.body.clientWidth; 高:document.documentElement.clientHeight || document.body.clientHeight;