用定时事件替换Javascript click事件?

时间:2011-01-09 00:46:19

标签: javascript jquery

我找到了一些javascript代码,当你点击它们时,它们会将照片叠加在一起。

而不是必须点击我喜欢该功能每5秒自动运行一次。如何将此事件更改为定时事件:

$('a#nextImage, #image img').click(function(event){ 

以下完整代码。感谢

$(document).ready(function() {
    $('#description').css({ 'display': 'block' });
    $('#image img').hover(
        function() { $(this).addClass('hover'); },
        function() { $(this).removeClass('hover'); }
    );

    $('a#nextImage, #image img').click(function(event) {
        event.preventDefault();
        $('#description p:first-child').css({ 'visibility': 'hidden' });
        if($('#image img.current').next().length) {
            $('#image img.current').removeClass('current').next().fadeIn('normal').addClass('current').css({ 'position': 'absolute' });
        }
        else{
            $('#image img').removeClass('current').css({ 'display': 'none' });
            $('#image img:first-child').fadeIn('normal').addClass('current').css({ 'position': 'absolute' });
        }

        if($('#image img.current').width() >= ($('#page').width() - 100)) {
            xPos = 170;
        }
        else {
            do {
                xPos = 120 + (Math.floor(Math.random() * ($('#page').width() - 100)));
            } while(xPos + $('#image img.current').width() > $('#page').width());
        }
        if($('#image img.current').height() >= 300) {
            yPos = 0;
        }
        else{
            do {
                yPos = Math.floor(Math.random() * 300);
            } while(yPos + $('#image img.current').height() > 300);
        }
        $('#image img.current').css({ 'left' :xPos, 'top' :yPos });
    });
});

2 个答案:

答案 0 :(得分:1)

我尝试使用setInterval函数。它每N毫秒运行一次。它看起来像:

setInterval(function() {
  alert('5 seconds over!');
}, 5000);

答案 1 :(得分:0)

$(document).ready(function() {
    $('#description').css({ 'display': 'block' });
    $('#image img').hover(
        function() { $(this).addClass('hover'); },
        function() { $(this).removeClass('hover'); }
    );

    setInterval(function() {
        $('#description p:first-child').css({ 'visibility': 'hidden' });
        if($('#image img.current').next().length) {
            $('#image img.current').removeClass('current').next().fadeIn('normal').addClass('current').css({ 'position': 'absolute' });
        }
        else{
            $('#image img').removeClass('current').css({ 'display': 'none' });
            $('#image img:first-child').fadeIn('normal').addClass('current').css({ 'position': 'absolute' });
        }

        if($('#image img.current').width() >= ($('#page').width() - 100)) {
            xPos = 170;
        }
        else {
            do {
                xPos = 120 + (Math.floor(Math.random() * ($('#page').width() - 100)));
            } while(xPos + $('#image img.current').width() > $('#page').width());
        }
        if($('#image img.current').height() >= 300) {
            yPos = 0;
        }
        else{
            do {
                yPos = Math.floor(Math.random() * 300);
            } while(yPos + $('#image img.current').height() > 300);
        }
        $('#image img.current').css({ 'left' :xPos, 'top' :yPos });
    }, 5000);
});