我在这里做错了什么 - 在文档加载时setTimeout

时间:2013-03-09 19:11:58

标签: javascript facebook function document-ready

正在使用应用程序并需要在10秒后执行postCook功能,但有些问题。刚刚用Javascript / jQuery工作了几天,所以仍然没有飞过:)

但现在已经被困在这几个小时了,所以即使它让我心碎,我也需要征求意见

$(document).ready(function() { setTimeout("postCook", 10000);
};

  function postCook()
  {
  FB.api(
  '/me/app:action',
  'post',
  { game: '<?php echo get_permalink(); ?>' },

function(response) {
if (!response || response.error) {
alert('Error occurred');
} else {
alert('Successful! Action ID: ' + response.id);
}
    });
         }

可以使用按钮执行它而不会出现问题,因此100%确定它在setTimeout

2 个答案:

答案 0 :(得分:5)

删除引号。 setTimeout(postCook,5000)。切勿将字符串传递给setTimeout

答案 1 :(得分:2)

您的代码存在的问题是您从不调用该函数。字符串中的代码只获取对函数的引用,并且不执行任何操作。这可行:

setTimeout("postCook()", 10000);

但是,由于你有一个函数的引用,你应该直接使用它:

setTimeout(postCook, 10000);