Kit*_*Kat 6 html javascript jquery
我使用javascript在我的网站上加载图片,取决于你点击的ul中的"小"照片......我有类似的东西:
<script type="text/javascript">
function viewImage(src, legende) {
document.getElementById("imageBig").src = "images/photos/"+src;
document.getElementById("legend").innerHTML = legende;
}
</script>
Run Code Online (Sandbox Code Playgroud)
简单地说:就像那样:
<ul id="ulPhotos">
<li>
<a href="#centre" onclick="javascript:viewImage('flute.jpg','La Reine de la Nuit au Comedia')">
<img src="images/photos/carre-09.jpg" alt="" />
</a>
<a href="#centre" onclick="javascript:viewImage('perichole.jpg','Manuelita - <em>La Périchole</em> à l’Opéra Comique')">
<img src="images/photos/carre-03.jpg" alt="" />
</a>
</li>
<li>
<a href="#centre" onclick="javascript:viewImage('12.png','Récital à Carnac, septembre 2008')">
<img src="images/photos/carre-12.jpg" alt="Marion Baglan Carnac Ré" />
</a>
<a href="#centre" onclick="javascript:viewImage('01.jpg','')">
<img src="images/photos/carre-01.jpg" alt="" />
</a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
所以你看,我可以,根据你点击的无序列表中的哪些小照片,加载一些特定的照片,通过将参数中的src字符串传递给我的viewImage函数...
但我决定用Jquery来获得一些淡入效果.但我无法找到一种方法来传递一个参数,告诉我的JQuery函数加载哪张照片取决于我点击的位置...
卡在这里:
$(document).ready(function(){
$('#ulPhotos').click(function() {
var newSrc = $('#imageBig').attr("src", "images/photos/11.jpg");
});
});
Run Code Online (Sandbox Code Playgroud)
我不希望11.jpg被硬编码,当我点击我的ul元素#ulPhotos中的特殊li元素时,我需要通过参数传递它...
我希望我很清楚对不起!
karim79 给出了正确的解决方案,但实际上并没有解释您的问题。
您将点击处理程序附加到列表本身,而不是直接附加到图像。当附加的 jQuery 行为回调触发时,this是被单击的元素,您希望将其作为图像周围的链接。在您当前的情况下this,将是列表本身。
您不一定需要向缩略图添加类。$('#ulPhotos a')将让您同样轻松地找到他们。我确实同意使用可data-点击属性来了解您想要显示哪个大图像的建议。
此外,如果您要向a 元素添加辅助单击行为,您可能希望防止发生默认行为,因此如下所示:
$('#ulPhotos a').click(function (event) {
$('#imageBig').attr('src', $(this).attr('data-big-image'));
event.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)