js實現兩點之間畫線的方法,js實現兩點

來源:互聯網
上載者:User

js實現兩點之間畫線的方法,js實現兩點

本文執行個體講述了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程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.