マウスがhtml要素の上に置かれている間、マウスオーバーで関数を呼び出し続けるにはどうすればよいですか
例:
<script>
function a() {
"special code hear"
}
</script>
<div onmouseover( 'a()')> </div>
関数を一度呼び出すのではなく、マウスがdivの上に置かれている間、関数を呼び出し続けるにはどうすればよいですか。
マウスがhtml要素の上に置かれている間、マウスオーバーで関数を呼び出し続けるにはどうすればよいですか
例:
<script>
function a() {
"special code hear"
}
</script>
<div onmouseover( 'a()')> </div>
関数を一度呼び出すのではなく、マウスがdivの上に置かれている間、関数を呼び出し続けるにはどうすればよいですか。
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>
var pee = '';
$('#poop').mouseover(function(){
pee = setInterval(function() {
// Do something every 5 seconds
alert('hi');
}, 1000);
});
$('#poop').mouseout(function() {
clearInterval(pee);
});
<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>