1

我在加载 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);
    });


}
4

3 回答 3

0

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

在 responseHTML 中执行 JavaScript

于 2012-04-06T04:43:50.260 回答
0

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

于 2012-04-05T07:49:16.400 回答
0

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

于 2012-04-05T07:51:41.033 回答