html
1 2<!doctype html> 3<html> 4<head> 5<meta charset="UTF-8"> 6<title>Canvas API Sample</title> 7<script language="javascript" type="text/javascript"> 8function load() { 9var array=document.getElementById('test'); 10console.log('test'); 11 12 13 14var bb=3; 15 var cs = document.getElementById('sample'), 16 ctx = cs.getContext('2d'), 17 csWidth = cs.width, 18 csHeight = cs.height, 19 center = { 20 x: csWidth / bb, 21 y: csHeight / bb 22 }; 23 24 25 26// 線の基本スタイル 27ctx.strokeStyle = '#666'; 28ctx.lineWidth = 3; 29 30// 横線を引く 31var drawHorizontalLine = function() { 32for(var i=1;i<=bb-1;i++){ 33 ctx.beginPath(); 34 ctx.moveTo(0, center.y*i); 35 ctx.lineTo(csWidth, center.y*i); 36 ctx.closePath(); 37 ctx.stroke();} 38}; 39 40// 縦線を引く 41var drawVerticalLine = function() { 42for(var i=1;i<=9;i++){ 43 ctx.beginPath(); 44 ctx.moveTo(center.x*i, 0); 45 ctx.lineTo(center.x*i, csHeight); 46 ctx.closePath(); 47 ctx.stroke();} 48 49}; 50 51 52drawHorizontalLine(); 53drawVerticalLine(); 54function put(s,t){ 55 ctx.arc(center.x*(s-0.5),center.y*(t-0.5),center.x*0.3,0,2*Math.PI,false); 56 ctx.fill(); 57} 58 59put(1,1) 60put(3,2) 61 62} 63 64 65 66 67</script> 68</head> 69<body onload="load()"> 70 71 72 73<p id="test">{{x.board}}</p> 74<center><canvas id="sample" style="border:1px solid;" width="500" height="500" color="rgb(255,0,255)"></canvas></center> 75 <div id="output"></div> 76 77</body> 78</html>
上記の中のputメソッドで●をcanvas内に描くというものを行っているのですが、putを複数回行うと変な線が入ってしまいます。
「おかしくなります」がどうおかしくなっているのか分からないですが、
そもそも質問のコードの提示の仕方がおかしくなっています。
質問編集画面でリアルタイムプレビュー出ているはずなので、確認し、調整して投稿しなおしてください
canvasの話ですかね?htmlも必要です。
コードの書き方も微妙なのできちんと「```」で囲み直してください
それにコピペで再現できるコードでないと誰もその「おかしくなった」ことを確認できません。
何がどうおかしくなったのか、どうなっていたら正解なのか要件をきちんと書いたうえで
コピペで再現できるコードをご提示ください。
少なくともHTMLは必要ですね。場合によりCSSも必要です。
コードを編集します。
javascriptで書いたコードは何で実行していますか?(Chromeなど・・・)
>{{x.board}}
フレームワークは何をお使いでしょうか。
djangoを使っています。boardはpython 上のクラスです。
本当に「JavaScript」でアドバイスを得たいのでしたらブラウザに表示されたHTMLのみ提示してください。
そうでなければタグにDJangoを追加しておいてください。
あなたの回答
tips
プレビュー