<img src="1.jpg" name="img" id="img" style="position:absolute;top:100;left:0;">
のtop:数値;left:数値;はそれぞれ画像の画面左上からの
topは上からの位置、leftは左からの位置になっています。(数学のグラフのyの方向だけ逆にしたようになっている)
つまり、見えない地点から移動させたい場合は、
topやleftに0以下の値を入れればいいわけです。
<img src="1.jpg" name="img" id="img" style="position:absolute;top:0;left:-100;">
ただし、注意としては画像を完全に見えない地点から動かす場合、topやleftを画像のサイズ以上のマイナスの値を入れないとはみ出てしまいます。
次に指定した地点で移動を止めたいということでしたので、私の最初の回答のソースの
if(sw2==1){
clearTimeout(tm);
tm=setTimeout("roll()",ms);
}
の部分を
if(sw2==1&&p<ストップする地点の座標){
clearTimeout(tm);
tm=setTimeout("roll()",ms);
}
に変えればいいです。
ストップする地点の座標には数値を入れてください。
また、うまく指定した地点に止まらない時は
step=数値;
の数値を調整してみてください。
<余談>←混乱する恐れがあるので必要ない場合は読まなくて結構です。
ただし、上の変更例は画像を右方向または下方向に動かす場合で、
画像を左方向または上方向に動かす時は
(手順1)
if(p>500||p<0){
sw=-sw;
}
を消す。
(手順2)
次に画像を右方向または下方向に動かす場合の変更部分を、
if(sw2==1&&p>ストップする地点の座標){
clearTimeout(tm);
tm=setTimeout("roll()",ms);
}
に書き換える。
(不等号の向きが逆になります。
p>ストップする地点の座標
と
p<ストップする地点の座標
のように>が<になっています)
の二つの手順を行えばいいです。
それと当然、
sw=-1;
としておかないといけません。
お礼
ありがとうございます。 本当に良くわかりました。 たびたびの質問に答えていただきありがとうございます。