7

マウスがhtml要素の上に置かれている間、マウスオーバーで関数を呼び出し続けるにはどうすればよいですか

例:

<script>
    function a() {
        "special code hear"
    }
</script>
<div onmouseover( 'a()')>&nbsp;</div>

関数を一度呼び出すのではなく、マウスがdivの上に置かれている間、関数を呼び出し続けるにはどうすればよいですか。

4

8 に答える 8

4

setTimeout( DEMO HERE )を使用した1つの可能な解決策を次に示します。これは毎秒繰り返されます:

HTML コード:

<div id='div'>test</div>

JS コード:

<script>
 document.getElementById('div').onmouseover=function(){a();};

 function a(){

   //some code here

   setTimeout(a,1000);

  }
</script>
于 2013-08-31T03:49:39.560 に答える
1

このフィドルを試してください

http://jsfiddle.net/C4AVg/

var pee = '';
$('#poop').mouseover(function(){

              pee =  setInterval(function() {
      // Do something every 5 seconds
                   alert('hi');
}, 1000);
});
    $('#poop').mouseout(function() {
        clearInterval(pee);
});
于 2013-08-31T03:49:38.117 に答える
0
<script type="text/javascript">
var tId = null,
    time = 100;
$( '#test' ).hover(
    function( event ) {
        tId = setTimeout( function() {

        }, time);
    },
    function( event ) {
        clearTimeout( tId );
    }
)
</script>
<div id="test">test</div>
于 2013-08-31T03:49:16.020 に答える