[英]How to make html button call external javascript drawing function
所以我的最終目標是擁有一個簡單的網頁,其中包含10個按鈕,每個按鈕在被點擊時調用不同的javascript函數。 這些功能中的每一個都是某種繪圖。 首先,我只是習慣於調用外部js文件的按鈕。
<html>
<head>
<script type = "text/javascript" src="/Users/myname/Downloads/p5-release 3/empty-example/sketch.js">
</script>
</head>
<body>
<button onclick="setup();draw();">
Draw me a circle!
</button>
</body>
</html>
上面是我的html文件,下面是我試圖調用該函數的javascript文件。
function setup() {
createCanvas(1300, 800);
}
function draw(){
ellipse(100,100,80,80);
}
按鈕出現但在點擊后沒有其他任何事情發生。 我希望按鈕在點擊后消失,只留下橢圓。 這有可能嗎? 我對網絡開發很新(我昨天開始),所以如果這是一個非常容易解決的問題,我很抱歉。
我不知道這是否有用但是..如圖所示你可以調用setup()
函數中的第二個函數draw()
, JSFiddle
更新
HTML:
<button id="myBtn">Draw me a circle!</button>
<div id="holder"></div>
JS:
btn = document.getElementById("myBtn");
btn.onclick = function setup() {
btn.remove();
//alert("Function Setup!");
document.getElementById("holder").innerHTML = '<canvas id="myCanvas" width="490" height="220"></canvas>';
draw();
}
function draw() {
//alert("Function Draw!");
var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');
var centerX = canvas.width / 2;
var centerY = canvas.height / 2;
var radius = 70;
context.beginPath();
context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
context.fillStyle = 'green';
context.fill();
context.lineWidth = 5;
context.strokeStyle = '#003300';
context.stroke();
}
對於多個按鈕,只需給每個按鈕一個id,並為每個按鈕創建一個js var:
btn1 = document.getElementById("myBtn1");
btn2 = document.getElementById("myBtn2");
注意: code802,值得一提的是,我將使用SVG繪制畫布:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.