最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS實現(xiàn)簡單的Canvas畫圖實例

 更新時間:2013年07月04日 15:29:24   作者:  
這篇文章介紹了JS實現(xiàn)簡單的Canvas畫圖實例代碼,有需要的朋友可以參考一下
定義變量:
[javascript]
復制代碼 代碼如下:

var startX;
var startY;
var endX;
var endY;
var radius;
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var select = document.getElementsByTagName("select");
var startX;
var startY;
var endX;
var endY;
var radius;
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var select = document.getElementsByTagName("select");

函數(shù)部分:
[javascript]
復制代碼 代碼如下:

window.onload=function() {
    canvas.onmousedown = function(e) {
    e = e || event;
    startX = e.clientX;
    startY = e.clientY;
    if(select[0].value == "arc") {
        canvas.onmousemove = moveShowArc;
    } else {
        canvas.onmousemove = moveShowRect;
    }
    }
    canvas.onmouseup = function() {
    canvas.onmousemove = "";
    }
}
function moveShowRect(e) {
    context.clearRect(0, 0, 500, 300);
    endX = e.clientX - startX;
    endY = e.clientY - startY;
    context.beginPath();
    context.rect(startX, startY, endX, endY);
    context.fillStyle = "#8ED6FF";
    context.fill();
    context.lineWidth = 3;
    context.strokeStyle = "black";
    context.stroke();
}
function moveShowArc(e) {
    context.clearRect(0, 0, 500, 300);
    endX = e.clientX - startX;
    endY = e.clientY - startY;
    radius = Math.sqrt(Math.pow(endX,2)+Math.pow(endY,2));
    context.beginPath();
    context.arc(startX, startY,radius,0,2 * Math.PI,false);
    context.fillStyle = "#8ED6FF";
    context.fill();
    context.lineWidth = 3;
    context.strokeStyle = "black";
    context.stroke();
}
window.onload=function() {
    canvas.onmousedown = function(e) {
 e = e || event;
 startX = e.clientX;
 startY = e.clientY;
 if(select[0].value == "arc") {
     canvas.onmousemove = moveShowArc;
 } else {
     canvas.onmousemove = moveShowRect;
 }
    }
    canvas.onmouseup = function() {
 canvas.onmousemove = "";
    }
}
function moveShowRect(e) {
    context.clearRect(0, 0, 500, 300);
    endX = e.clientX - startX;
    endY = e.clientY - startY;
    context.beginPath();
    context.rect(startX, startY, endX, endY);
    context.fillStyle = "#8ED6FF";
    context.fill();
    context.lineWidth = 3;
    context.strokeStyle = "black";
    context.stroke();
}
function moveShowArc(e) {
    context.clearRect(0, 0, 500, 300);
    endX = e.clientX - startX;
    endY = e.clientY - startY;
    radius = Math.sqrt(Math.pow(endX,2)+Math.pow(endY,2));
    context.beginPath();
    context.arc(startX, startY,radius,0,2 * Math.PI,false);
    context.fillStyle = "#8ED6FF";
    context.fill();
    context.lineWidth = 3;
    context.strokeStyle = "black";
    context.stroke();
}

相關(guān)文章

  • JS 組件系列之Bootstrap Table 凍結(jié)列功能IE瀏覽器兼容性問題解決方案

    JS 組件系列之Bootstrap Table 凍結(jié)列功能IE瀏覽器兼容性問題解決方案

    這篇文章主要介紹了JS 組件系列之Bootstrap Table 凍結(jié)列功能IE瀏覽器兼容性問題解決方案,需要的朋友可以參考下
    2017-06-06
  • JS讀取XML文件示例代碼

    JS讀取XML文件示例代碼

    讀取XML文件的方法有很多,在本文為大家詳細介紹下使用js是如何做到的,感興趣的朋友可以參考下本文
    2013-11-11
  • 獲取layer.open彈出層的返回值方法

    獲取layer.open彈出層的返回值方法

    今天小編就為大家分享一篇獲取layer.open彈出層的返回值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • localStorage設置有效期和過期時間的簡單方法

    localStorage設置有效期和過期時間的簡單方法

    眾所周知前端三大緩存,cookie,sessionStorage,localStorage,下面這篇文章主要給大家介紹了關(guān)于localStorage設置有效期和過期時間的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • 淺析JSONP技術(shù)原理及實現(xiàn)

    淺析JSONP技術(shù)原理及實現(xiàn)

    這篇文章主要介紹了淺析JSONP技術(shù)原理及實現(xiàn) 的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • js實現(xiàn)iframe動態(tài)調(diào)整高度的代碼

    js實現(xiàn)iframe動態(tài)調(diào)整高度的代碼

    iframe,尤其是不帶邊框的iframe因為能和網(wǎng)頁無縫的結(jié)合從而不刷新頁面的情況下更新頁面的部分數(shù)據(jù)成為可能,可是iframe的大小卻不像層那樣可以“伸縮自如”,所以帶來了使用上的麻煩,給iframe設置高度的時候多了也不好,少了更是不行,現(xiàn)在,讓我來告訴大家一種iframe動態(tài)調(diào)整高度的方法,主要是以下JS函數(shù):
    2008-01-01
  • layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法

    layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法

    今天小編就為大家分享一篇layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 根據(jù)當前時間在jsp頁面上顯示上午或下午

    根據(jù)當前時間在jsp頁面上顯示上午或下午

    這篇文章主要介紹了根據(jù)當前時間不同在jsp頁面上顯示上午或下午,需要的朋友可以參考下
    2014-08-08
  • 微信小程序換膚功能實現(xiàn)代碼(思路詳解)

    微信小程序換膚功能實現(xiàn)代碼(思路詳解)

    這篇文章主要介紹了微信小程序換膚功能實現(xiàn)代碼,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • javascript 選擇文件夾對話框(web)

    javascript 選擇文件夾對話框(web)

    web程序開發(fā)中經(jīng)常會遇見選擇文件夾的時候,這對于web程序員是一件麻煩的事情,由于本地安全限制JS不能訪問本地文件,所以選擇文件夾一般都避而不談,筆者在寫一個程序的時候也遇見了同樣的問題,開始嘗試使用JS來遍歷文件,結(jié)果都沒有成功
    2009-07-07

最新評論

红原县| 海城市| 新晃| 北海市| 鄂伦春自治旗| 堆龙德庆县| 武平县| 岚皋县| 东兴市| 齐河县| 民权县| 聊城市| 阿鲁科尔沁旗| 巴青县| 扶绥县| 武川县| 青铜峡市| 故城县| 老河口市| 淳化县| 巩义市| 永济市| 孟州市| 渭南市| 蛟河市| 赤壁市| 沭阳县| 通州市| 廉江市| 扶余县| 彰化县| 阳高县| 遂昌县| 旬邑县| 泽普县| 左云县| 措勤县| 肇庆市| 治县。| 齐河县| 璧山县|