`

JS offset screen scroll client 介绍(IE)

阅读更多

obj.offset[Width|Height|Top|Left]  取控件相对于父控件的位置
event.offset[X|Y] 取鼠标相对在触发事件的控件中的坐标
event.screen[X|Y] 鼠标相对于屏幕坐标
event.client[X|Y]   鼠标相对于网页坐标在在
obj.scroll[Width|Height|Top|Left] 获取对象滚动的大小
obj.client[Width|Height|Top|Left] 获取对象可见区域的大小

以下为测试代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
div{
font-family: "宋体";
font-size: 12px;
color: #000000;
}
#div1{
position:absolute;
background-color:#f0f0f0;
width:200px;
height:200px;
left:20px;
top:0px;
z-index:1;
}
#div2{
background-color:#cfc0cf;
width:200px;
height:210px;
position:absolute;
left:261px;
top:347px;
z-index:100;
}
#div3{
background-color:#abbfbf;
width:200px;
height:200px;
position:absolute;
left:20px;
top:247px;
z-index:100;
}
#div4{
background-color:#cfcfcf;
width:200px;
height:200px;
position:absolute;
left:461px;
top:147px;
z-index:100;
}
-->
</style>

 

</head>

<body>
<div id='div1' onclick='eventc(this)'></div>
<div id='div2' onclick='client(this);'></div>
<div id='div3' onclick='screen(this);'></div>
<div id='div4'onclick='offset(this);'>offset 控件相对于父窗体的位置</div>
<script>
function offset(ids){
ids.innerHTML="offsetLeft ="+ids.offsetLeft+"<BR>";
ids.innerHTML+="offsetWidth ="+ids.offsetWidth+"<BR>";
ids.innerHTML+="offsetHeight ="+ids.offsetHeight+"<BR>";
ids.innerHTML+="offsetTop ="+ids.offsetTop+"<BR>";
ids.innerHTML+="event.offset 鼠标相对于控件的位置<BR>";
ids.innerHTML+="offsetX ="+event.offsetX+"<BR>";
ids.innerHTML+="offsetY ="+event.offsetY+"<BR>";
}
function screen(ids){
ids.innerHTML="scrollWidth ="+ids.scrollWidth+"<BR>";
ids.innerHTML+="scrollHeight ="+ids.scrollHeight+"<BR>";
ids.innerHTML+="scrollTop ="+ids.scrollTop+"<BR>";
ids.innerHTML+="scrollLeft ="+ids.scrollLeft+"<BR>";
}
function client(ids){
ids.innerHTML="clientWidth ="+ids.clientWidth+"<BR>";
ids.innerHTML+="clientHeight ="+ids.clientHeight+"<BR>";
ids.innerHTML+="clientTop ="+ids.clientTop+"<BR>";
ids.innerHTML+="clientLeft ="+ids.clientLeft+"<BR>";
}
function eventc(ids){
ids.innerHTML="鼠标相对于屏幕坐标<BR>event.screenX="+event.screenX+"<BR>";
ids.innerHTML+="event.screenY ="+event.screenY+"<BR>";
ids.innerHTML+="鼠标相对于网页坐标event.clientX="+event.clientX+"<BR>";
ids.innerHTML+="event.clientY ="+event.clientY+"<BR>";
}
</script>
</body>
</html>

一个鼠标拖动的小例子
<html>
<head>
<style>
#st1{
position:absolute;
left:161;
top:147;
width:309;
height:262;
z-index:1;
background-color:#f0f0f0;
}
</style>
</head>
<body>
<div id='st1' style="wdith:100px" onmouseup='moveDiv.show();' onmousedown='moveDiv.preeDown()' 
onmousemove='moveDiv.mouseMove()' onmouseout='moveDiv.show()'>
</div>
</body>
</html>
<script>
var moveDiv = new function(){ 
var status = 0;
var left = 161;
var top = 147;
var ids = document.getElementById('st1');
var mx = 0;
var my = 0;
this.preeDown = function(){
   status=1;
   mx = event.offsetX;
   my = event.offsetY;
}

this.mouseMove = function(){
   if(status==1){
   ids.style.left=event.clientX+document.body.scrollLeft-mx;
   ids.style.top=event.clientY+document.body.scrollTop-my;
   
   }
}

this.show=function(){
   status=0;
}
}
</script>

 

分享到:
评论

相关推荐

    05-offset,scroll,client.html

    05-offset,scroll,client.html

    js中offset,client , scroll 三大元素知识点总结

    本篇将详细介绍与元素尺寸位置和滚动相关的三个重要的属性家族:offset系列、client系列和scroll系列。这些属性为我们提供了元素位置信息,窗口或元素内部的滚动距离等重要数据,对于实现页面布局和交互功能至关重要...

    JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结

    主要介绍了JS前端知识点offset,scroll,client,冒泡,事件对象的应用,结合实例形式总结分析了offset,scroll,client,冒泡,事件对象相关功能、原理及操作注意事项,需要的朋友可以参考下

    javascript的offset、client、scroll使用方法详解

    JavaScript中的`offset`、`client`和`scroll`是一组用于获取和操作页面元素位置及大小的重要属性。这些属性在Web开发中非常常见,尤其是在处理动态布局和交互时。下面将详细讲解这些属性的含义、用途及其在不同...

    javascript中offset、client、scroll的属性总结

    JavaScript中的offset、client和scroll属性是用于获取和操作HTML元素...在JavaScript中处理元素尺寸和位置时,了解并正确使用offset、client和scroll属性至关重要,它们可以帮助我们创建更加动态和响应式的网页界面。

    smoothScroll.js.zip

    smoothScroll.js 是极小的,符合标准的平滑滚动脚本,无依赖,支持 Firefox, Chrome, IE10, Opera 和 Safari。使用:[removed][removed]示例:var smoothScroll = require('smoothscroll'); var exampleBtn = ...

    jquery文字图片滚动插件scroll.js下载地址.zip

    《jQuery文字图片滚动插件scroll.js详解与应用》 在网页设计中,动态效果的运用可以极大地提升用户体验,其中文字和图片的滚动展示是常见的一种交互形式。jQuery作为一个强大的JavaScript库,提供了丰富的插件来...

    better-scroll.js

    better-scroll.js

    三剑客:offset、client和scroll还傻傻分不清?

    在学习前端的过程中,我们经常会碰到offset, client与scroll,所以我就把它们称作为‘三剑客’。 01 offset – 偏移量 定义:元素在屏幕上占用的所有的可见的空间。 元素可见的大小由其高度、宽度决定,包括所有内...

    网页元素位置(scroll、client、offsetWidth等)获取、设置详解

    网页元素位置(scroll、client、offsetWidth等)获取、设置详解

    jquery+js 控制div的scroll样式效果

    3. **编写JavaScript**:在`jscroll.js`中,我们可以监听滚动事件,例如`$(document).scroll()`,并根据需要调整样式或者执行其他操作。例如,当鼠标悬停在`div`上时,可以改变滚动条的颜色或宽度。 4. **绑定事件...

    JavaScript实现的smooth scroll 平滑滚动菜单demo

    平滑滚动(Smooth Scroll)是前端开发中一种常见的交互效果,它使得网页中的元素在滚动时不是瞬间跳转,而是以平滑、流畅的方式过渡到目标位置。这为用户提供了更好的浏览体验,尤其是在长页面和导航菜单中。本文将...

    点击锚点链接时页面滚动的特效(Javascript Smooth Scroll)

    本篇文章将详细介绍如何利用JavaScript实现这一特效。 **一、基本原理** 平滑滚动的核心在于使用JavaScript监听锚点链接的点击事件,然后通过定时器控制浏览器逐步改变滚动位置,而不是立即跳转。这种方法可以模拟...

    js中的scroll和offset 使用比较的实例与分析.docx

    在JavaScript中,`scroll`和`offset`是两个重要的概念,它们主要用于获取和操作网页元素的位置和滚动状态。本文将详细解析这两个概念以及它们的区别。 首先,`offset`属性主要包含`offsetTop`, `offsetLeft`, `...

    jquery.infinitescroll.js演示示例以及常用参数

    jQuery Infinite Scroll,也称为`infinitescroll.js`,是一款广泛使用的JavaScript插件,它实现了网页内容的自动滚动加载,即当用户滚动到页面底部时,新的内容会自动加载,无需手动翻页。这种功能常用于博客、新闻...

    smoothscrolljs是一款轻量级的纯JS页面锚链接平滑过渡插件

    在这种背景下,`smooth-scroll.js`应运而生,它是一款轻量级的纯JavaScript插件,专为实现这种平滑过渡效果而设计。 ### 插件特点 1. **轻量级**:`smooth-scroll.js`体积小巧,不会对网页加载速度造成过大负担,...

    uniGui_js_scroll_mo2020.zip

    "uniGui_js_scroll_mo2020.zip"这个压缩包文件主要关注的是“uniGui”框架下JavaScript实现的滚动功能,结合了“js_scroll”的标签,我们可以推断它可能包含了一系列用于开发或优化用户界面滚动效果的代码和资源。...

Global site tag (gtag.js) - Google Analytics