![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
コンソールには何も表示されないのに、walk.pngが表示されません。
画面は真っ白です。
javascriptのコードはこれです、
let c =document.getElementById('c');
c.width = 640;
c.height = 640;
let ct = c.getContext('2d');
var walk = new Object();
walk.img = new Image();
walk.img.src = 'img/walk.png';
function add(s, sx, dx, dy){
ct.drawImage(s.img, sx * 50, 0, 50, 80, dx, dy, 50, 80);
}
ct.fillStyle = '#770';
ct.fillRect(0, 0, 640, 640);
add(walk, 1, 0, 0);
ファイルはこのように作っています、
index.html
js -----------------main.js
img -------------- walk.png
htmlはこのように作っています、
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>walk</title>
</head>
<body>
<canvas id="c"></canvas>
<script type="text/javascript" src="js/main.js"></script>
</body>
</html>
No.1ベストアンサー
- 回答日時:
こんにちは
main.jsの内容が
>javascriptのコードはこれです
ということと解釈しました。
>画面は真っ白です。
ってーことはなくて、ご指定の背景色には塗られていると思うのですが・・・?
ただし、画像は表示されないってことだと解釈しました。
(本当に真っ白なら、もっと前の部分でエラーが発生していますね)
画像のアドレスなどには間違いがないものと仮定して、一番ありそうなのは、画像を読込む前にキャンバスに描画しようとしていて、(データが無いので)キャンセルされていることではないでしょうか?
以下のサイトの中ほどをご覧になれば、これに関する解説と対応法が示されています。
http://www.html5.jp/canvas/how6.html
もう一つありそうなのは、ご使用の画像サイズにもよりますが、
>ct.drawImage(s.img, sx * 50, 0, 50, 80, dx, dy, 50, 80);
で切り取っている部分の内容がなくなってしまっているとか・・・
とりあえず、一番最初は何もせずに
ct.drawImage(s.img, 0, 0);
などとして、表示されることを確認してみるのが宜しいかと。
let c =document.getElementById('c');
c.width = 640;
c.height = 640;
let ct = c.getContext('2d');
var walk = new Object();
walk.img = new Image();
walk.img.src = 'img/walk.png';
function add(s, sx, dx, dy){
ct.drawImage(s.img, sx * 50, 0, 50, 80, dx, dy, 50, 80);
}
onload = function(){
draw();
};
function draw(){
ct.fillStyle = '#770';
ct.fillRect(0, 0, 640, 640);
add(walk, 1, 0, 0);a
}
とすることで解決しました!!ありがとうございました<(_ _)>
おっしゃる通り画像が読み込みされてなかったみたいです^^;
2回も回答させてしまい申し訳ありませんでした(><)/
No.2
- 回答日時:
No1です。
>と変更しましたが同じように,
>コンソールにも画面にも何も表示されませんでした
No1で「一番ありそう」と書いておいた、タイミングの問題をクリアしてないのでは?
問題点を無視しても、何も解決はしないと思いますが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vb.net2005での画像の合成方法
-
HTMLからimgのsrcのみを正規表...
-
IplImageのBmp変換。
-
OpenCVの実行エラー
-
MFCで画像を表示させているので...
-
javaScriptでリンク画像のラン...
-
onclickで画面が固まる・・・ら...
-
【OpenCV】二値画像後、白の部...
-
libjpegライブラリの使い方につ...
-
画像が表示でnull; this.src
-
MAX関数を使ってからLEFT JOIN...
-
c++std::string型をTCHARに変換...
-
<div ~ </div> で囲まれたテキ...
-
IFRAMEの表示/非表示を切り替え...
-
jqueryのsortableで一部ソート...
-
動的にHTMLコンテンツを吹き出...
-
変数名をどのようにつけるのが...
-
jQueryでシンプルドラッグドロ...
-
プルダウンの位置がwin/macでず...
-
クリックで色変更後に既に変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScriptで変更した属性の元...
-
MFCで画像を表示させているので...
-
【OpenCV】二値画像後、白の部...
-
外部javascriptの重複を防ぐには
-
Vb.net2005での画像の合成方法
-
pythonで、tkinterとpillowの組...
-
html内にスライドショーを複数設置
-
ラズパイでno module named zbar
-
libjpegライブラリの使い方につ...
-
リンク先を動的に変更する
-
外部ファイルにしたら文字化け...
-
プログラムの上手な書き方は?
-
複数画像のランダム複数表示(...
-
error LNK2019 未解決のシンボ...
-
pythonのpygameでキャラクター...
-
imgボタンにfocusの当て方
-
OpenCVで固定枠で画像を操作す...
-
(javascript)HTMLで指定した...
-
<noscript>と</a>の関係
-
nodejsの画像表示は特別なこと...
おすすめ情報
>ご指定の背景色には塗られていると思うのですが
ct.fillStyle = 'blue';
と変更したら青い画面は表示されました
>とりあえず、一番最初は何もせずに
ct.drawImage(s.img, 0, 0);
などとして、表示されることを確認してみるのが宜しいかと。
function add(s){
ct.drawImage(s.img, 0, 0);
}
add(walk);
と変更しましたが同じように,
コンソールにも画面にも何も表示されませんでした