1

だから私は三角形を描いて「コミッククラウド」を作るために使うこの機能を持っています。とにかく、コードは次のとおりです。

function drawTriangle(param)
{
var context = document.getElementById("triangle" + param).getContext("2d");

context.shadowColor   = '#111111';
context.shadowBlur    = 1;
context.shadowOffsetX = 3;
context.shadowOffsetY = 3;
context.fillStyle     = '#FFFFFF';
context.lineWidth     = 1;

context.beginPath();
    context.lineTo(16, 0);
    context.lineTo(8, 10);
    context.lineTo(0, 0);
context.closePath();
context.fill();
}

これは、セクションに含まれる functions.js で宣言したままにします。次に、HTML ファイルの最後に、この関数を呼び出す script.js ファイルを含めます。

for(i=1; i<=3; i++)
{
drawTriangle(i);
};

問題は、この関数の呼び出し後に書かれたすべてのコードが実行されていないことです。もちろん、最後の JS 関数として呼び出されることは問題ありませんが、何か間違ったことをしているような気がしてイライラします。

アイデアはありますか?チップ?助けてくれてありがとう:)

4

2 に答える 2

0

jquery ( http://api.jquery.com/ready/ ) の .ready 内でコードを実行するか、別の方法で getElementById() 呼び出しを行う前に DOM をロードしてください。

この標準を実装に追加するまでに、何時間も無駄にしました。

于 2013-02-15T03:44:33.330 に答える
0

ここでは何も問題はありませんが、これdocument.getElementById("triangle" + param)が返さnullれる場合 (ID が存在しない場合)、問題があります。

ないからnull.getContext("2d");

于 2013-02-15T03:32:32.780 に答える