重新加载以前卸载的内容ajax

时间:2013-07-17 18:28:15

标签: jquery ajax load reload

不确定如何开始考虑解决此问题。许多关于加载和卸载ajax的搜索只返回有关如何在加载新内容之前卸载的结果,而不是重新加载以前卸载的内容。

我有一个Web应用程序,可以将内容加载到目标div中,该目标div包含可以卸载第一个加载内容然后将新内容加载到同一目标div中的链接。我想要做的是创建一个脚本,它将更改href以重新加载以前卸载的内容。

为了正确看待这一点,我正在建立一个投资组合,从指数中加载一个充满项目大拇指的投资组合。单击项目拇指将卸载所有拇指并加载项目详细信息。我想要一个后退按钮,它将链接回来加载投资组合的拇指,然后从那里再次点击将链接回主索引。

结构是这样的:

  1. 的index.php
  2. /portfolio/index.php(链接到每个项目的缩略图列表)
  3. /portfolio/project.php(收集有关项目的相关信息)
  4. 我需要一个按钮: 在状态1时未显示 链接回状态2的索引 并链接回州3的投资组合。

    目前,我有部分工作,但显然依赖于我输入要检查的特定页面。我想要一些动态变化的东西。

    //If link containes project.php, show the back button, if not hide it.
            if(destination.indexOf('project.php')>=0){
                $('div.back-button').css({'display':'block'});
                $('a.back-button').attr('href', 'portfolio');
            }
            else if(destination.indexOf('portfolio')>=0){
                $('div.back-button').css({'display':'block'});
                $('a.back-button').attr('href', '/app');
            }
            else{
                $('div.back-button').css({'display':'none'});
            };
    

    我猜我需要在某个地方创建一个捕获正在加载的内容的变量,并成为返回的位置。但是,当没有点击任何内容时如何启动链条,然后延迟使用它直到再点击一次?

    例如,当我从索引中单击投资组合时,我希望它能够记住“投资组合”已加载,但只有在我点击项目后才将其用作按钮位置的变量。加载项目后,后退按钮将返回到投资组合。

    如何解决这个问题的任何帮助将不胜感激!

    你可以看到我在http://joeallam.co.uk/app

    的距离

1 个答案:

答案 0 :(得分:0)

在您通过AJAX加载要保留的内容后,将该元素的innerHTML保存为JavaScript变量。然后当有人按下BACK时,只需将该变量的内容放回到通常加载AJAX内容的同一个DIV中。

var saveThis;
saveThis = $('#ajaxTarget').html() //save
$('#ajaxTarget').html(saveThis) // load