jquery计数悬停事件

发布于 2024-11-07 05:28:53 字数 255 浏览 1 评论 0原文

我想计算鼠标悬停在 html 元素上的时间。

示例

链接

<a class="mylink">Check me Out !</a>

jquery

jQuery('.mylink').hover(function(){

//what should i do here to count
});

提前致谢!

I want to count how much time ,I am mouseovering on an html element.

for eample

link

<a class="mylink">Check me Out !</a>

jquery

jQuery('.mylink').hover(function(){

//what should i do here to count
});

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

小…红帽 2024-11-14 05:28:53

如果您想为每个匹配的元素保留一个单独的计数器,请执行以下操作:

jquery('.mylink').mouseover(function(){
    var $this = $(this);
    var count = parseInt($this.data('count'), 10) + 1;
    $this.data('count', count);
});

然后您可以使用 $(selector).data('count') 获取每个元素的计数。

编辑:修正了愚蠢的错误。

If you want to keep a separate counter for each matched element do the following:

jquery('.mylink').mouseover(function(){
    var $this = $(this);
    var count = parseInt($this.data('count'), 10) + 1;
    $this.data('count', count);
});

Then you can get the count for each element using $(selector).data('count').

Edit: Fixed stupid mistake.

无可置疑 2024-11-14 05:28:53
$(function()
{
    var myCounter = 0;
    $('.mylink').mouseover(function()
    {
        myCounter++;
    });
});
$(function()
{
    var myCounter = 0;
    $('.mylink').mouseover(function()
    {
        myCounter++;
    });
});
吾家有女初长成 2024-11-14 05:28:53

如果您想知道您在某个元素上悬停了多少秒,请尝试以下操作:

$('.mylink').hover(
    //mouseover handler
    function(){
        //record the current time
        $(this).data( 'start', new Date().getTime() );
    },
    //mouseout handler
    function(){
        //grab the end time
        var end = new Date().getTime();
        //calculate the difference in seconds
        var hoverTime = ( end - $(this).data('start') )/1000;
        //use the result
        alert( hoverTime.toFixed( 2 ) );
    }
);

If you want to know how many seconds you have been hovering over an element try this:

$('.mylink').hover(
    //mouseover handler
    function(){
        //record the current time
        $(this).data( 'start', new Date().getTime() );
    },
    //mouseout handler
    function(){
        //grab the end time
        var end = new Date().getTime();
        //calculate the difference in seconds
        var hoverTime = ( end - $(this).data('start') )/1000;
        //use the result
        alert( hoverTime.toFixed( 2 ) );
    }
);
浮光之海 2024-11-14 05:28:53

调用这个函数...

jquery('.mylink').hover(function(){

start(true)
});


function start(isStarted, index){
if(!index){
 index = 0;
 }

 if(isStarted) {
 started[index] = true;
 counter[index] =0;

 }


if(started[index] && true) {
 counter[index] += 1;
 timer = setTimeout("start(false," + index + ")",1000);
 }

} 

call this function ...

jquery('.mylink').hover(function(){

start(true)
});


function start(isStarted, index){
if(!index){
 index = 0;
 }

 if(isStarted) {
 started[index] = true;
 counter[index] =0;

 }


if(started[index] && true) {
 counter[index] += 1;
 timer = setTimeout("start(false," + index + ")",1000);
 }

} 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文