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 相关文章推荐
Add a Table to a Word Document
Jun 15 Javascript
一些常用的JS功能函数(2009-06-04更新)
Jun 04 Javascript
关于html+ashx开发中几个问题的解决方法
Jul 18 Javascript
基于jquery的点击链接插入链接内容的代码
Jul 31 Javascript
使用按钮控制以何种方式打开新窗口的属性介绍
Dec 17 Javascript
jQuery表单美化插件jqTransform使用详解
Apr 12 Javascript
超实用的JavaScript代码段 附使用方法
May 22 Javascript
基于jquery实现多级菜单效果
Jul 25 jQuery
一个简易时钟效果js实现代码
Mar 25 Javascript
VueJs使用Amaze ui调整列表和内容页面
Nov 30 Javascript
浅谈React Native Flexbox布局(小结)
Jan 08 Javascript
js字符串处理之绝妙的代码
Apr 05 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/06/03 PHP
php 启动时报错的简单解决方法
2014/01/27 PHP
WordPress中用于创建以及获取侧边栏的PHP函数讲解
2015/12/29 PHP
SAE实时日志接口SDK用法示例
2016/10/09 PHP
PHP-CGI远程代码执行漏洞分析与防范
2017/05/07 PHP
JScript中的undefined和&quot;undefined&quot;的区别
2007/03/08 Javascript
IE php关于强制下载文件的代码
2008/08/23 Javascript
ie 调试javascript的工具
2009/04/29 Javascript
jQuery 动态酷效果实现总结
2009/12/27 Javascript
JavaScript this调用规则说明
2010/03/08 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
jQuery.Validate验证库的使用介绍
2013/04/26 Javascript
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
js动态修改input输入框的type属性(实现方法解析)
2013/11/13 Javascript
JS+DIV实现鼠标划过切换层效果的实例代码
2013/11/26 Javascript
jQuery中unbind()方法用法实例
2015/01/19 Javascript
JS瀑布流实现方法实例分析
2016/12/19 Javascript
详解Weex基于Vue2.0开发模板搭建
2017/03/20 Javascript
JavaScript函数中的this四种绑定形式
2017/08/15 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
2019/09/17 Javascript
webpack4从0搭建组件库的实现
2020/11/29 Javascript
python使用Tkinter显示网络图片的方法
2015/04/24 Python
Python fileinput模块使用实例
2015/06/03 Python
python+selenium实现163邮箱自动登陆的方法
2017/12/31 Python
Pytorch中accuracy和loss的计算知识点总结
2019/09/10 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
2019/08/01 HTML / CSS
嘻哈珠宝品牌:KRKC&CO
2020/10/19 全球购物
市三好学生主要事迹
2014/01/28 职场文书
机关会计岗位职责
2014/04/08 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
2017公司年会主持人开幕词
2016/03/04 职场文书
详解MindSpore自定义模型损失函数
2021/06/30 Python
NodeJs使用webpack打包项目的方法详解
2022/02/28 NodeJs