задержка в функции jquery - PullRequest
0 голосов
/ 06 октября 2011

Я хочу отложить эту функцию

jquery:

    function simple_tooltip(target_items, name){
        $(target_items).each(function(i){
            $("body").append("<div class='"+name+"' id='"+name+i+"'><p>"+$(this).attr('title')+"</p></div>");
            var my_tooltip = $("#"+name+i);

            $(this).removeAttr("title").mouseover(function(){
                    my_tooltip.css({opacity:0.8, display:"none"}).fadeIn(1000);
            }).mousemove(function(kmouse){
                    my_tooltip.css({left:kmouse.pageX+15, top:kmouse.pageY+15});
            }).mouseout(function(){
                    my_tooltip.fadeOut(10);
            });
        });
    }

    simple_tooltip("a.news_toltip","tooltip");

html:

<a class="news_toltip" href="http://test.com" title="Title">Link</a>

Ответы [ 3 ]

2 голосов
/ 06 октября 2011

Взгляните на setTimeout ()

var delay = 1000; // one second
setTimeout(function(){
    simple_tooltip("a.news_toltip","tooltip");
}, delay);
0 голосов
/ 06 октября 2011

Вы смотрели на Javascript setTimeout?

В зависимости от того, что вы хотите отложить (это не совсем понятно из вашего вопроса), вы можете поместить его вокруг определенного вызова fadeIn / Out или вокруг вызова самой функции всплывающей подсказки.

setTimeout( function_name, timeout_in_ms );
0 голосов
/ 06 октября 2011

Вы можете использовать это для любой функции:

setTimeout('simple_tooltip("a.news_toltip","tooltip")', delayTimeYouWant)

, когда delayTimeYouWant в миллисекундах: (1000 означает 1 секунду)

...