1

我有一个 jQuery 函数,它对整个 HTML 页面应用一些格式。我已成功执行此功能。

jQuery.fn.emoticons= function(iconfolder) {
    //some operations
};

此函数的目的是将所有表情符号(:D)转换为笑脸图像。该函数对整个 HTML 内容都有影响。

我想要实现的是,我希望这个函数每 x 秒执行一次,并且基于它应该更改页面内容。

由于我对 jQuery 的了解有限,我知道 $.ajax() 可以基于 URL 而不是函数使用。

实现这一目标的最佳方法是什么?

编辑:

根据以下输入,我尝试了这个并且有效。谢谢大家。

$(function() {
   setInterval(function() { $(".ow_content").emoticons() },5000);
}); 
4

2 回答 2

1

只需设置一个间隔setInterval()

$.fn.emotions = function() {
   currentHTML = $("body").html();
   newHTML = currentHTML.replace(/:D/,"<img src='/your/image/path'/>");
   $("body").html(newHTML);
};

$(function() {
    waitSeconds = 5;
    setInterval($.fn.emotions, waitSeconds*1000);
});

是 jsFiddle让你玩它。

于 2013-03-01T17:29:55.737 回答
1

使用 setInterval 在指定时间后执行函数。

setInterval(someFunction(),1000);

其中 1000 是以毫秒为单位的时间,即 1 秒。

在这种情况下,函数 someFunction 将每秒运行一次。

现在使用它你可以调整你的代码逻辑。

于 2013-03-01T17:54:11.297 回答