アプリ版:「スタンプのみでお礼する」機能のリリースについて

フォームボタンを押している間、インラインフレームのウィンドウをスクロールしたいのですが
思うように動作してくれません。

最初、タグのonmousedown属性とonmouseup属性を使用して
簡単に実装できると思っていたのですが
mouseupのイベントがうまく拾えないようで、あきらめました。

下記のようなマウスドラッグのサンプルソースがあったので
こちらを改造しようと思ったのですが、いろいろいじってみてもだめでした。

「マウスが離された」というイベントはどうすれば拾えるのでしょうか?
IE限定の動作を予定しています。
よろしくお願いいたします。



<script type="text/javascript">
//tab→全角スペース
//マウスをクリックして動かしている間だけスクロールする

 window.document.onmousemove = scrollSubWindow;
 window.document.onmouseup = scrollOff;

 scrollFlag = false;

 function scrollOn()
 {
  scrollFlag = true;
 }
 
 function scrollOff()
 {
  scrollFlag = false;
 }
 
 function scrollSubWindow()
 {
  if( !scrollFlag ) return;
  Dummy.scrollBy( 0, 10 );
  return false;
 }
 
</script>

<iframe src="dummy.html" name="Dummy" width=200 height=200></iframe>
<input type="button" value="下へ" onMousedown="scrollOn()" style="width: 200px; height: 200px;">

A 回答 (2件)

nakata321さん、



これは「タイマーイベント」です。

   「時間が経過したら呼んでください。」

ということですね。
    • good
    • 0

以下のコードを参考にしてみてください。


----------------------------------------------------------------
<script language="JavaScript" type="text/javascript">
<!--
var td ;

 //window.document.onmousemove = scrollSubWindow;
 //window.document.onmouseup = scrollOff;

 //scrollFlag = false;

 function scrollOn()
 {
td=setInterval("scrollSubWindow()",120);
scrollSubWindow();
 }
 
 function scrollOff()
 {
clearInterval(td);
 }
 
 function scrollSubWindow()
 {
   frames[0].scrollBy( 0, 100 );
  return false;
 }
 
//-->
</script>
</head>

<body>
<iframe src="dummy.html" name="Dummy" width=200 height=200></iframe>
<input type="button" value="下へ" onmouseDown="scrollOn()" onmouseUp="scrollOff()" style="width: 200px; height: 200px;">
</body>
    • good
    • 0
この回答へのお礼

イベント云々ではなく、こんな方法で実現できるんですね。
目からうろこでした。
書いていただいたコード、自前のプログラムに無事組み込めました。
ありがとうございました。

お礼日時:2008/02/23 13:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!