我正在创建我的个人网页,其中包含精美的jQuery幻灯片功能,以显示和隐藏多个页面。它运作良好,但我必须考虑那些浏览他们的JavaScript禁用的人。这意味着我无法使用jQuery函数来隐藏和显示页面。目前,no-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删除整个页面而只显示图像?
答案 0 :(得分:2)
在已关闭的文档上使用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>