ajax .load 函数删除整个页面,只加载单个图像

ajax .load function removes whole page and only loads single image

本文关键字:加载 单个 图像 函数 load 删除 ajax      更新时间:2023-09-26

我正在制作我的个人网页,该网页具有花哨的jQuery幻灯片功能,可以显示和隐藏多个页面。它运行良好,但我必须考虑那些在禁用 javascript 的情况下浏览的人。这意味着我不能使用 jQuery 函数来隐藏和显示页面。目前,无javascript用户将一次看到所有页面。所以我想修改页面,该页面将正确显示和运行,其中一些页面对javascript和非javascript用户隐藏。

我已经设计了一种实现此目的的方法,但我需要使用 ajax 或其他东西在 javascript 加载时加载这些隐藏页面并将其隐藏。我尝试使用 ajax .load 加载存储在文件中的页面片段,但它只是扔掉整个页面并在页面片段代码中显示其中一个图像。

这是我用来加载页面的代码

$('#resume').load("include/mywork.php");

mywork.php 文件看起来像这样。(简体)

<h1>My work</h1>
<div>
     <noscript><!--For non-javascript users -->
          <img class="insideIMG" src='images/works/worklogo.png' alt=''>
     </noscript>
     <script><!-- lazy loading plugin for javascript users -->
          document.write("<img class='insideIMG' src='images/loading.gif' data-echo='images/works/worklogo.jpg' alt=''>);
     </script>
     comments comments comments lorem ipsum
</div>

有没有人知道是什么导致javascript删除整个页面并只显示图像?

document.write用于已关闭的文档时,它会清空该文档并向其中写入新内容。这就是您在这种情况下发生的情况,因为脚本是在文档加载完成后执行的。您唯一真正的选择是不使用 document.write 来创建该映像。

<h1>My work</h1>
<div>
     <img class='insideIMG' src='images/loading.gif' data-echo='images/works/worklogo.jpg' alt=''>
     comments comments comments lorem ipsum
</div>