我想使用这个函数在 div 元素中加载我的页面内容:
function loadmypage(DIV, pageURL)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(DIV).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET", pageURL ,true);
xmlhttp.send();
}
但是,当我单击“框架”本身内的链接时,该功能不起作用。我猜目标元素与加载页面本身位于不同页面的原因。
所以我的问题是:有没有办法让 div 元素在框架本身内加载整个页面时表现得像 iframe?
PS:出于安全原因,我不允许使用 iFrame,也不允许出于效率原因使用 jQuery。主页中的链接正常加载目标,当我单击这些页面内的任何链接时会出现问题。
<div id="nav" class="mmenu">
<ul type="none">
<li><a href= "javascript:loadmypage('viewMessages.php')">Messages</a></li>
<li><a href= "javascript:loadmypage('userHomepage.php')">My Conferences</a></li>
<li><a href= "javascript:loadmypage('availableConferences.php')">Conferences</a></li>
<li><a href= "javascript:loadmypage('incomingRequests.php')">Requests</a></li>
<li><a href= #>News</a></li>
<li><a href= #>Options</a></li>
</ul>
</div>
</fieldset>
<div id="collabsoft" class="collabsoft">