把div设置成相对定位或绝对定位,总之是让其拥有left,top值,
用鼠标的left减去div的left值就是鼠标在div里面的left值,即鼠标在div中的x坐标,
同理,
用鼠标的top值减去div的top值就是鼠标在div里面的top值,即鼠标在div中的y坐标
这样我们就获取了鼠标在div中的位置了
如果要兼容浏览器,最好使用一个库来实现,用鼠标的页面位置减去的页面位置就行了。
比如jquery:
$(document)click(function(e){
alert("X: " + (epageX - $('img')offset()left) + ", Y: " + (epageY - $('top')offset()top));
});
是指Script生成的iframe吧?理论上,iframe内的页面和parent页只有上下级关系,所以鼠标在iframe内的坐标应该不能在父页获取。你可以用documentgetElementById("iframe1")contentDocument得到iframe的document对象,之后 *** 作它得到iframe内的坐标,再与父页中iframe标签左上角坐标叠加就可以。
把这句改成下面那样documentalld1stylecursor="move"; documentgetElementById('d1')stylecursor='move';
有两种方法
1 用组件的title属性, 这个是HTML中自带的提示属性, 当鼠标停留在组件上的时候, 就会d出提示, 比如<div title="小明">name</div>, 当鼠标停留在div上的时候, 就会有一个小黄框, 显示"小明"
2上面的提示框很不好看, 而且功能很固定, 所以你可以在组建上加一个onmouseover的事件, 记录鼠标的位置, 我写了一个例子, 你看看是不是你需要的:
<script>
var mouseX;
var mouseY;
function showName() {
var infoDiv = documentgetElementById('infoDiv');
infoDivinnerHTML = 'This is the name!';
infoDivstyleleft = mouseX;
infoDivstyletop = mouseY;
infoDivstyledisplay = "block";
}
function mouseOver(obj) {
// 此处记录鼠标停留在组建上的时候的位置, 可以自己通过加减常量来控制离鼠标的距离
mouseX = eventclientX;
mouseY = eventclientY;
}
</script>
<div onclick="showName()" onmouseover="mouseOver()" >Click here to display name</div>
<!-- 用来显示名字的DIV, 根据需要可以修改格式和布局 -->
<div id="infoDiv" style="display: none; position: absolute; width: 100px; height: 50px; background-color: #F1F19B;"></div>
附上代码:
<!DOCTYPE html>
<html>
<head>
<script>
function mousePosition(evt){
evt = evt || windowevent;
var xPos = evtpageX || evtclientX || evtoffsetX || evtx;
var yPos = evtpageY || evtclientY || evtoffsetY || evty;
return [xPos, yPos];
}
function moveWindow (e) {
documentonmousemove = function(e){
resultinnerHTML = mousePosition(e);
};
}
onload = moveWindow;
</script>
</head>
<body>
<div id="result">
<!-- 展示结果 -->
</div>
</body>
</html>
(1)、<!DOCTYPE>声明位于位于HTML文档中的第一行,处于<html>标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。
(2)、标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。
以上就是关于js 怎么获得鼠标在当前div中的位置全部的内容,包括:js 怎么获得鼠标在当前div中的位置、js获取鼠标点击事件的相对位置、JS获取鼠标点击位置坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)