2011-02-28 61 views
1

标题可能会说我需要什么。Ajax负载div,然后返回到前面的div

得到它从一个网站.. 难道像这样LINK

我在编都非常新。

但是有可能有一段代码,我可以返回到以前的div? 因为现在当我按下或单击返回它会转到以前的HTML页面。

在此先感谢!

var loadedobjects="" 
var rootdomain="http://"+window.location.hostname 

function ajaxpage(url, containerid){ 
var page_request = false 
if (window.XMLHttpRequest) // if Mozilla, Safari etc 
page_request = new XMLHttpRequest() 
else if (window.ActiveXObject){ // if IE 
try { 
page_request = new ActiveXObject("Msxml2.XMLHTTP") 
} 
catch (e){ 
try{ 
page_request = new ActiveXObject("Microsoft.XMLHTTP") 
} 
catch (e){} 
} 
} 
else 
return false 
page_request.onreadystatechange=function(){ 
loadpage(page_request, containerid) 
} 
page_request.open('GET', url, true) 
page_request.send(null) 
} 

function loadpage(page_request, containerid){ 
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)) 
document.getElementById(containerid).innerHTML=page_request.responseText 
} 

function loadobjs(){ 
if (!document.getElementById) 
return 
for (i=0; i<arguments.length; i++){ 
var file=arguments[i] 
var fileref="" 
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding 
if (file.indexOf(".js")!=-1){ //If object is a js file 
fileref=document.createElement('script') 
fileref.setAttribute("type","text/javascript"); 
fileref.setAttribute("src", file); 
} 
else if (file.indexOf(".css")!=-1){ //If object is a css file 
fileref=document.createElement("link") 
fileref.setAttribute("rel", "stylesheet"); 
fileref.setAttribute("type", "text/css"); 
fileref.setAttribute("href", file); 
} 
} 
if (fileref!=""){ 
document.getElementsByTagName("head").item(0).appendChild(fileref) 
loadedobjects+=file+" " //Remember this object as being already added to page 
} 
} 
} 

回答

0

所以它似乎你想保持一个页面的状态在ajax调用后的状态的历史。 简单的答案是签出YUI历史记录管理器(http://developer.yahoo.com/yui/history/)或jQuery历史插件(http://tkyk.github.com/jquery-history-plugin/

+0

谢谢,我现在得到它,它不会用几行代码XD解决。我会看看雅虎的开发人员,看起来像在那里解释得更好。只是想说,真的很喜欢这个网站帮助人们出去!来自荷兰的欢呼! – Luciano 2011-02-28 19:47:14

0

如果我理解正确,你想要处理浏览器的后退和前进按钮?

这可能是一个相当艰巨的任务,并且存在许多解决方案/库/插件来帮助解决这个问题。

例如,你可以看看:http://tkyk.github.com/jquery-history-plugin/

然而,这也许需要您现有的代码库的大规模的重构,但没有更多的信息,这真的很难说。

+0

我添加了代码,如果您的意思是更多的信息。我查看了你发送的网站,但是这超出了我的头。我想在div中使用ajax加载组合页面,以便更新它很容易。所以这不是一个简单的解决方案...? – Luciano 2011-02-28 19:34:38