javascript - 使 div 表现得像 iframe

标签 javascript ajax iframe html

我想使用此函数在 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">

最佳答案

您的链接不起作用,因为您缺少 div 参数。注意你的功能:

function loadmypage(DIV, pageURL)
{
...

第一个参数是 DIV,您仅传递 pageURL。

<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>

关于javascript - 使 div 表现得像 iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10523940/

相关文章:

javascript - 为什么 isDefaultPrevented 检查 modal.js 中的 div?

javascript - 带有按钮值的 JQuery POSTing,返回输入?

jquery - 不安全的 JavaScript 尝试使用 URL 访问框架。它是本地的

javascript - 单击 anchor 元素后执行操作

html - 图像和视频作为具有相同比例的响应元素

javascript - 如何根据angularJS中的数据将 'selected'放入html选项中?

javascript - JSON.stringify 不适用于循环 JSON 对象。该怎么办?

javascript - 无法将数据从 Node 服务器发送到ajax

javascript - 部署在我的服务器上时,Rails 时间总是晚一天

javascript - 如何使用 Jquery Validation 插件专门验证某个表单字段