如果图像标记是用javascript编写的,并且需要用户输入,那么图像不会加载到页面中吗?

如果图像标记是用javascript编写的,并且需要用户输入,那么图像不会加载到页面中吗?,javascript,Javascript,我想要一种只在需要时加载图像的方法,但我对使用AJAX犹豫不决。相反,像这样的东西会起作用吗 <div onclick="loadimages()">Section Title</div> <script type="text/javascript"> function loadimages() { document.write('<img src="images/thumbnail1.jpg" />'); document.wri

我想要一种只在需要时加载图像的方法,但我对使用AJAX犹豫不决。相反,像这样的东西会起作用吗

<div onclick="loadimages()">Section Title</div>
<script type="text/javascript">
function loadimages()
{
    document.write('<img src="images/thumbnail1.jpg" />');
    document.write('<img src="images/thumbnail2.jpg" />');
    document.write('<img src="images/thumbnail3.jpg" />');
}
</script>
章节标题
函数loadimages()
{
文件。写(“”);
文件。写(“”);
文件。写(“”);
}
这样做的目的是,当单击该div时,图像将显示在“节标题”下方,并且仅在此时加载图像。

编辑:未测试的代码--动态键入

document.write
无法在加载页面后执行所需操作,您必须对DOM执行某些操作

比如,也许:

<div id='section_title' onclick="loadimages()">Section Title</div>
<script type="text/javascript">
function loadimages()
{
    var pics = ['thumbnail1.jpg', 'thumbnail2.jpg', 'thumbnail3.jpg'];
    var i, img, el;
    el = document.getElementById('section_title');
    for (i = 0; i < pics.length; i++) {
      img = document.createElement("img");
      img.src = pics[i];
      el.appendChild(div);
    }
}
</script>
章节标题
函数loadimages()
{
var pics=['thumbnail1.jpg','thumbnail2.jpg','thumbnail3.jpg'];
var i、img、el;
el=document.getElementById('section_title');
对于(i=0;i
另一种方法是将图像放入HTML文件中,但使用
display:none
隐藏图像并根据需要取消隐藏


或者,根据用途,将它们正常地放入HTML中,然后在加载时隐藏,然后在需要时取消隐藏。

如果您想动态地将元素添加到DOM中,有几种选择比讨厌的
文档更可取。编写
。例如,您可以执行以下操作:

var image = document.createElement("img");
image.src = "images/thumbnail1.jpg";

var parent = document.getElementById("foo"); // identify the parent somehow
parent.appendChild(image);
或者你可以这样做:

var parent = document.getElementById("foo"); // identify the parent somehow
parent.innerHTML += '<img src="..." />';
var parent=document.getElementById(“foo”);//以某种方式识别父母
parent.innerHTML+='';
或者,如果使用jQuery:

$("your selector here").append('<img src="..." />');
$(“此处的选择器”).append(“”);

当你做
文档时。写('something')
内容将替换
文档的全部内容


你能做的是,动态地创建新元素,并将它们附加到适当的位置。

出于对所有神圣事物的热爱,不要使用
document.write
。您可以将
元素添加到DOM中。JQuery使这个愚蠢的简单。也考虑图像对象肯定不会取代文件的内容。我以前也遇到过类似的问题。code>document.write
将整个文档变为空,然后添加新内容。它可以做到这一点,但当它嵌入HTML时就不行了。谢谢,这是我如何添加图片的答案。这会确保浏览器只在javascript运行时加载这些图像吗?@Yves:是的,因为在代码运行之前,它对这些图像一无所知。您还可以使用浏览器的开发人员工具(查看网络访问的时间线)亲自看到这一点。