js初学者的div移动
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="keywords" content="div移动">
<title>div移动</title>
</head>
<body>
<div id="div" style="width:200px; position:absolute; height:200px; background-color:#F90; "></div> <!-- 做一个div 0.0 -->
</body>
</html>
<script type="text/javascript">
var div = document.getElementById('div');
document.onmousedown = function(e) //鼠标点击事件
{
e = e || window.event;
var tops = document.getElementById('div').offsetTop; //div四个角的坐标(200可变动)
var lefts = document.getElementById('div').offsetLeft;
var rights = lefts+200;
var bottoms = tops+200;
var mousex = e.pageX || e.clientX; //点击时的鼠标位置
var mousey = e.pagey || e.clientY;
var topz = document.getElementById('div').getBoundingClientRect().top; //获取div的左上位置
var leftz = document.getElementById('div').getBoundingClientRect().left;
if((mousex > lefts && mousex < rights)&&(mousey > tops && mousey < bottoms))
{ //判断鼠标点击时是否在div中
document.onmousemove = function(e) //鼠标滑动事件
{
var mousexx = e.pageX || e.clientX; //获取实时鼠标位置
var mouseyy = e.pagey || e.clientY;
var xx = mousexx - mousex; //求移动的距离
var yy = mouseyy - mousey;
leftzz = leftz + xx;
topzz = topz + yy;
div.style.left = leftzz +"px"; //对div的左上角进行计算,与鼠标移动的距离相同
div.style.top = topzz +"px";
}
}
}
document.onmouseup = function(){ //鼠标抬起将滑动事件解除
document.onmousemove = null;
}
</script>
js初学者的div移动的更多相关文章
- js 键盘移动div、img对象
js 键盘移动div.img对象 <html> <script type="text/javascript"> var EXtype="" ...
- 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能
原文:利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能1.在界面上添加几个checkbox和一 ...
- JS拖拽div(移动)
<!doctype html><html><head> <meta charset="utf-8"> <title>JS ...
- js弹窗 js弹出DIV,并使整个页面背景变暗
1.首先写一个遮罩层div,然后再写一个弹窗的div <!-- 遮罩层 --> <div id="cover" style="background: # ...
- JS实现拖动div层移动
JS实现拖动div层移动 在谈到拖动div层之前,我们有必要来了解下 下面JS几个属性的区别---- pageX,pageY,layerX,layerY,clientX,clientY,screen ...
- 原生js实现一个DIV的碰撞反弹运动,并且添加重力效果
继上一篇... 原生js实现一个DIV的碰撞反弹运动,并且添加重力效果 关键在于边界检测,以及乘以的系数问题,实现代码并不难,如下: <!DOCTYPE html> <html la ...
- 原生js实现一个DIV的碰撞反弹运动
原生js实现一个DIV的碰撞反弹运动: 关键在于DIV的边界检测,进而改变运动方向,即可实现碰撞反弹效果. <!DOCTYPE html> <html lang="en& ...
- js控制使div自动适应居中
一直都在想怎么样使弹出的DIV能在任何时候都是居中显示的,刚开始的时候是用CSS样式直接定义好层的位置,但是当页面很长的时候,或是浏览器窗口大小不是固定的时候就不能正确的显示,所以只好用JS来控制DI ...
- 文字添加响应事件,js动态加载CSS, js弹出DIV
文字添加响应事件,js动态加载CSS, js弹出DIV <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...
随机推荐
- Win7下Doxygen配置与使用
1. 下载与安装 1.1 下载 Doxygen官方安装程序及其手册下载地址,目前使用版本为1.8.8. 安装程序:http://www.stack.nl/~dimitri/doxygen/downl ...
- 链表栈的C语言实现
#ifndef _CONST_H_#define _CONST_H_ #include <stdio.h>#include <stdlib.h> typedef enum { ...
- An error occurred while collecting items to be installed
安装的插件:Activiti 在Eclipse安装插件时,报以下错误: An error occurred while collecting items to be installed session ...
- [linux] 指令记录
1> 查看linux版本号 lsb_release -a cat /etc/redhat-release
- Asp.NET Visible属性与HTML display:none
作为Asp.NET 程序猿,我们经常会遇到客户端HTML 元素与 WebPage Server端控件互操作的情景.如果没有很好的掌握两种技术的细节就很容易发生一些“莫名其妙的错误”. 我最近犯的一个错 ...
- 【学习笔记】在原生javascript中使用ActiveX和插件
什么是插件 现在的浏览器提供了大量的内置功能,但仍然有一些工作无法完成,如播放音频和视频.插件及其扩展浏览器功能就尤为重要. 插件是可下载的应用程序,可以插入到浏览器中,现在有很多不同的插件,常用的有 ...
- Java多线程初探
多线程 单线程的程序只有一个顺序执行流.多个顺序流之间互不干扰. 多线程的创建 定义Thread类的子类,重写该类的run()方法. 创建Thread子类的实例. 调用线程对象的start()方法来启 ...
- android 实现类似qq未读消息点击循环显示
public void jumpUnread(boolean cycle) { List<ContactLogModel> dataList = adapter.getContactLog ...
- 老王讲自制RPC框架.(一.前言与技术选型)
(#)背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时,只 ...
- git的常用命令
简介 上篇讲解git的博客,在centos6.5中安装完成了github客户端,接下来我们来熟悉git的操作命令 1.查看自己机器中安装的git版本 [root@jacky conf]# git - ...