- ベストアンサー
onclick="" の""を変えることができるでしょうか。
お世話になります。 <img src="hoge.gif" id="movImgID1" onclick="GoMoveImg(1,-1)"> で、hoge.gifをクリックすると、この画像が移動するようにしました。 例えば(100,100)->(200,200) に移動します。 この(200,200)へ移動が完了したとき、 onclick="GoMoveImg(1,0)" などというように、onclickで指定する関数を変えることはできないものでしょうか。 移動が完了した時点は、スクリプト上でとらえています。 alert("移動完了"); で、その時点を確認しています。 なにとぞよろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
if( (200,200)へ移動が完了したとき ){ var ID1 = document.getElementById("movImgID1"); ID1.setAttribute("onclick", "GoMoveImg(1,0)"); // ID1.setAttribute("onclick", function(){ GoMoveImg(1,0); }); }
その他の回答 (1)
- ttyp03
- ベストアンサー率28% (277/960)
まずグローバル変数でふたつのパラメータ用の変数を用意いしてください。 初期値は 1 と -1。 次に GoMoveImgMain とでも名前を付けて関数を作ってください。 パラメータはなしで。 この関数からは GoMoveImg を呼び出します。 > alert("移動完了"); この時点で先程の変数の値をそれぞれ 1 と 0 に変更します。 そして onclick からは GoMoveImg を呼び出すようにします。 具体的に書くとこうなります。 var p1 = 1; var p2 = -1; ~ function GoMoveImgMain() { GoMoveImg( p1, p2 ); } ~ function xxxx() ←名前がわからないので適当 { alert("移動完了"); p1 = 1; p2 = 0; } ~ <img src="hoge.gif" id="movImgID1" onclick="GoMoveImgMain()"> こういう感じでいかがでしょうか。
お礼
ttyp03さん、ありがとうございます。 こんなアイディアがあるものかと、感心しました。 どうも、ありがとうございました。
お礼
BLUEPIXYさん、ありがとうございます。 ID1.setAttribute("onclick", function(){ GoMoveImg(1,0); }); で、できました。 このような記載ができるんですね。 どうもありがとうございました。