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 相关文章推荐
关于Javascript 的 prototype问题。
Jan 03 Javascript
一个轻量级的javascript库 pj介绍
Dec 19 Javascript
开启Javascript中apply、call、bind的用法之旅模式
Oct 28 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
Jun 24 Javascript
JS遍历页面所有对象属性及实现方法
Aug 01 Javascript
javascript观察者模式实现自动刷新效果
Sep 05 Javascript
JS改变页面颜色源码分享
Feb 24 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
jQuery 点击获取验证码按钮及倒计时功能
Sep 20 jQuery
封装微信小程序http拦截器过程解析
Aug 13 Javascript
鸿蒙系统中的 JS 开发框架
Sep 18 Javascript
JS ES6异步解决方案
Apr 29 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中运用jQuery的Ajax跨域调用实现代码
2012/02/21 PHP
ThinkPHP中自定义错误页面和提示页面实例
2014/11/22 PHP
php实现在服务器上创建目录的方法
2015/03/16 PHP
php实时倒计时功能实现方法详解
2017/02/27 PHP
PHP设计模式之委托模式定义与用法简单示例
2018/08/13 PHP
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
2010/09/03 Javascript
js中substr,substring,indexOf,lastIndexOf的用法小结
2013/12/27 Javascript
express的中间件basicAuth详解
2014/12/04 Javascript
使用console进行性能测试
2015/04/27 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
使用EVAL处理jqchart jquery 折线图返回数据无效的解决办法
2015/11/26 Javascript
Bootstrap每天必学之面板
2015/11/30 Javascript
AngularJS 指令的交互详解及实例代码
2016/09/14 Javascript
AngularJS中transclude用法详解
2016/11/03 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
集合Bootstrap自定义confirm提示效果
2017/09/19 Javascript
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
Python实现PS图像调整黑白效果示例
2018/01/25 Python
python实现图书管理系统
2018/03/12 Python
Python正则匹配判断手机号是否合法的方法
2020/12/09 Python
Python流程控制常用工具详解
2020/02/24 Python
Python中的With语句的使用及原理
2020/07/29 Python
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
纽约服装和生活方式品牌:Saturdays NYC
2017/08/13 全球购物
Falconeri美国官网:由羊绒和羊毛制成的针织服装
2018/04/08 全球购物
SQL中where和having的区别
2012/06/17 面试题
网络工程师面试(三木通信技术有限公司)
2013/06/05 面试题
《自然之道》教学反思
2014/02/11 职场文书
我的未来不是梦演讲稿
2014/09/02 职场文书
优秀党员自我评价范文
2014/09/15 职场文书
论群众路线学习笔记
2014/11/06 职场文书
收银员岗位职责
2015/02/03 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
护理自荐信
2019/05/14 职场文书
英国数字版游戏销量周榜公布 《小缇娜的奇幻之地》登顶
2022/04/03 其他游戏