我想从链接加载不同的图像到div

时间:2010-01-23 13:45:18

标签: jquery ajax image html load

Hiya,非常非常新的jQuery,并在你精彩的教程中幸存下来。

我正在我的投资组合网站上工作,并且有一个项目列表,这些项目使用jQuery的加载功能将每个项目的描述加载到单独的div中。在每个描述中是一组数字链接,比如1-5,我想在点击时将相关图像显示到另一个单独的div中。到目前为止,我的问题是我不能重复使用加载函数,因为它会覆盖它的intiial用途,并且似乎不想回显到包含我所有项目描述的php文件。

有没有办法解决这个问题?

2 个答案:

答案 0 :(得分:5)

我只是在猜测,因为我没有看到你的代码,但是当你使用ajax动态加载内容时,新内容中的任何javascript都不会被执行。

解决此问题的最佳方法是使用jQuery's live function来定位新加载内容中的链接,这些链接在单击时替换图像src - 无需使用加载来获取图像。以下是一些示例代码:

主页javascript(我没有包含加载功能)

$('.project').live('click',function(){
 newImg = $(this).attr('data-img');
 $('#content img.projectImg').attr('src', newImg);
})

已加载内容中的HTML

<div id="content">

<!-- this content was dynamically loaded -->
<img class="projectImg" style="float:right"/>
<ul>
 <li class="project" data-img="project1.jpg">Project 1</li>
 <li class="project" data-img="project2.jpg">Project 2</li>
</ul>

</div>

答案 1 :(得分:-1)

你可以尝试使用纯JavaScript来做到这一点,不需要jquery

例如,动态更改图像或文本:

document.getElementById('Image_tag_ID').src = 'http:\\ bla-bla';
or
document.getElementById('Div_tag_ID').innerHTML = '<h1>Hello</h1>';