js实现两点之间画线的方法


Posted in Javascript onMay 12, 2015

本文实例讲述了js实现两点之间画线的方法。分享给大家供大家参考。具体分析如下:

最近有点无聊,琢磨了很久,想到了一消磨时间的点子,也就是做js版的连连看。

两点之间画线也只是连连看最基本功能的一部分,所以我画的线也仅是折线,而且还只能向左折,后面将根据连连看中图片位置点来确定折线的方向。

<!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">
body{
 font-size:12px;
}
</style>
</head>
<script type="text/javascript">
<!--
var dot=new Array();
document.onmousedown =function(a) 
{ 
 //若div存在,则删除
 if(document.getElementById('line_div')){
 var clearDiv=document.getElementById("line_div");
 clearDiv.parentNode.removeChild(clearDiv);
 }
 //按下时创建一个事件
 if(!a) a=window.event;
 //获取x轴、y轴坐标
 var x=a.clientX;
 var y=a.clientY;
 //当数组长度大于等于4时,清空数组
 if(dot.length>=4) dot.splice(0,4);
 //将x、y添加到数组中,数组中保存了两组坐标值,相当于页面上的A(x1,y1)、B(x2,y2)两点
 dot.push(x,y);
 //当数组长度为4时,画线。
 if(dot.length==4){
 //计算div的长和宽
 var width=Math.abs(dot[0]-dot[2]);
 var height=Math.abs(dot[1]-dot[3]);
 //在页面上定位div左上角的具体位置
 var left=dot[0]-dot[2]<0?dot[0]:dot[2];
 var top=dot[1]-dot[3]<0?dot[1]:dot[3];
 //创建div
 var div=document.createElement("div");
 div.innerHTML=' <div id="line_div" style="width:'+width+'px;height:'+height+'px;position:absolute;visibility:visible;left:'+left+'px;top:'+top+'px;border-left:1px solid #cdcdcd;border-top:1px solid #cdcdcd;"></div>';
 document.body.appendChild(div);
 }
} 
-->
</script>
<body>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Asp.net下利用Jquery Ajax实现用户注册检测(验证用户名是否存)
Sep 12 Javascript
js indexOf()定义和用法
Oct 21 Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
May 07 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
Nov 12 Javascript
一个实用的图片切换支持点击切换和自动轮播
Sep 09 Javascript
基于javascript实现仿百度输入框自动匹配功能
Jan 03 Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
Jan 12 Javascript
jQuery zTree加载树形菜单功能
Feb 25 Javascript
require.js 加载 vue组件 r.js 合并压缩的实例
Oct 14 Javascript
JS+canvas画一个圆锥实例代码
Dec 13 Javascript
validform表单验证的实现方法
Mar 08 Javascript
JS如何实现基于websocket的多端桥接平台
May 14 Javascript
jquery简单实现图片切换效果的方法
May 12 #Javascript
浅谈javascript的分号的使用
May 12 #Javascript
JS中Location使用详解
May 12 #Javascript
js获取微信版本号的方法
May 12 #Javascript
javascript中基本类型和引用类型的区别分析
May 12 #Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
May 12 #Javascript
Javascript中typeof 用法小结
May 12 #Javascript
You might like
基于PHP编程注意事项的小结
2013/04/27 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
jquery 事件执行检测代码
2009/12/09 Javascript
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
jQuery 1.8 Release版本发布了
2012/08/14 Javascript
javascript使用isNaN()函数判断变量是否为数字
2013/09/21 Javascript
jquery增加时编辑jqGrid(实例代码)
2013/11/08 Javascript
jquery常用特效方法使用示例
2014/04/25 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
2015/09/19 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
jQuery中Find选择器用法示例
2016/09/21 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
angular2+node.js express打包部署的实战
2017/07/27 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
2018/09/04 Javascript
CentOS7中源码编译安装NodeJS的完整步骤
2018/10/13 NodeJs
node.js爬取中关村的在线电瓶车信息
2018/11/13 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
element form 校验数组每一项实例代码
2019/10/10 Javascript
利用原生JS实现欢乐水果机小游戏
2020/04/23 Javascript
Python3中的json模块使用详解
2018/05/05 Python
Jupyter中直接显示Matplotlib的图形方法
2018/05/24 Python
Python之Class&amp;Object用法详解
2019/12/25 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
Python对象的属性访问过程详解
2020/03/05 Python
python对 MySQL 数据库进行增删改查的脚本
2020/10/22 Python
css3中仿放大镜效果的几种方式原理解析
2020/12/03 HTML / CSS
中国电视购物:快乐购
2017/02/04 全球购物
音乐教育专业自荐信
2014/09/18 职场文书
高中校园广播稿
2014/10/21 职场文书
检讨书范文
2015/01/27 职场文书
公司介绍信范文
2015/01/31 职场文书
农民工工资保障承诺书
2015/05/04 职场文书
Python基础之字符串格式化详解
2021/04/21 Python