在另一个网页/ IFRAME脚本的div中显示内容

时间:2013-01-12 17:33:26

标签: php javascript jquery html

我有10个画廊,让我们说gallery1.php,gallery2.php等。

我想制作一个导航器,每当我按下“First Gallery”或“Secont Gallery”等时。

它将做的只是改变div或其他内容。

图库用for循环显示图像。基本上,我将所有照片重命名为系列号,然后使用for循环一个接一个地打印它们。

我尝试使用HTML的IFRAME,但是当我尝试将脚本高度设置为内容高度时,我遇到了一个问题,因为脚本无法在所有浏览器上运行。我谷歌的其他文章,现在尝试了大约10个脚本,但似乎没有一个在所有的浏览器上工作。

如果您的脚本适用于所有浏览器,那将会有所帮助。

如果不这样做,如何将div内容更改为其他网页的内容?只是考虑一下我试图从其他网页提取的内容是For循环的结果。

每次选择其他画廊时,我都不想重新加载整个页面。

2 个答案:

答案 0 :(得分:0)

您可以使用AJAX实现此目的。基本上当你选择一个新的画廊时,JavaScript(建议使用jQuery)将获取相关的PHP页面并将其放入div中,如下所示:

$.post('gallery1.php', function(data) {
  $('#the-div-id').html(data);
});

答案 1 :(得分:0)

您可以使用AJAX从服务器获取内容并插入页面而无需重新加载整个页面。

jQuery有许多AJAX方法,其中最简单的是load()

为您的图库链接提供一个公共类:

<a class="gallery_link" href="gallery1.php">One</a>

然后在jQuery中:

$(function(){    
    $('.gallery_link').click(function(){
      /* "this" inside click handler refers to link clicked*/
     var galleryUrl= this.href;
      $('#galleryDiv').load(galleryUrl, function(){
        /* new content is oaded into the DIV, can run any other code here that manages new content*/
      });
      /* prevent browser opening url in window*/
      return false;    
    })
});

API引用:http://api.jquery.com/load/