在ajax加载页面中运行函数?

时间:2012-04-05 07:45:05

标签: javascript facebook jquery

我在加载ajax页面时试图运行一个函数。 在index.html我加载page1.html,并在page1.html我有一个功能,我想在页面加载时运行。

我尝试过很多东西,但没有运气。

让我说我只想运行一个带有警报的功能,那看起来怎么样? 谢谢!

我使用jquery来获取page1.html。 在page1.html我有以下代码从Facebook获取一些专辑,我只是​​想在页面加载时运行代码?

alert('onload');

//get album name
FB.api('/1424613333333/albums', function(response) {

  if (response && response.data && response.data.length){
    var ul = document.getElementById('fb-albumslist');
    for (var i=0, l=response.data.length; i<l; i++) {
     if (response.data !== "undefined"){    
      var
        album = response.data[i],
        li = document.createElement('li'),
        a = document.createElement('a');
        if(!album.link) continue;
      a.innerHTML = album.name;
      a.href = album.link;
      li.appendChild(a);
      ul.appendChild(li);

    }
   }
  }

  });
 FB.XFBML.parse( document.getElementById('fb-albumslist') );

}

我使用它来加载ajax页面:

function loadPage(url) {

      $('#guiden_menyn').load('manmade/guiden/guiden_menyn.html #content', hijackLinks);

      $('#container').load(url + ' #content', hijackLinks);

}
function hijackLinks() {
    $('#guiden_menyn a').click(function(e){
        e.preventDefault();
        loadPage(e.target.href);
    });


}

3 个答案:

答案 0 :(得分:0)

我认为这是不可能的。但你可以在ajax之后手动调用函数

答案 1 :(得分:0)

尝试使用jquery load(http://api.jquery.com/load/)。它在加载完成后给出回调

答案 2 :(得分:0)

这是一种方法 - 解析响应,提取脚本,然后评估它们

Execute JavaScript within responseHTML