javascript - 用jquery取到一个图片数组时只可识别其第一张图片?跟事件委托有关系吗?
本文介绍了javascript - 用jquery取到一个图片数组时只可识别其第一张图片?跟事件委托有关系吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
$(function()
$(window).resize(function() {
var $height=$(". img").height();
console.log($height);
});
})
这里 img 是三张图片(轮播图),当第一张展现的时候可以正常输出height ,到后两张图片展示的时候,$height的值成了0,求解
解决方案
$(".img").height()
只能拿到第一张图片的高度,而拿不到后面两张的,想拿后面两张的高度的时候,请使用:
$(".img").eq(1).height() //第二张图片
$(".img").eq(2).height() //第三张图片
我觉得你的轮播图应该是轮播到第二张的时候,第一张图片已经隐藏了,然后你又拿到第一张图片的height,正因为第一张图片已经隐藏了,所以你拿到的height为0。
建议调整下:
给当前显示的图片加个
class
,比如active
,默认在第一张轮播到第二张的时候,把第一张图片的className
active
干掉,然后把第二张图片加上classNameactive
然后在
resize
里通过$(.img.active).height()
来获取高度。
这篇关于javascript - 用jquery取到一个图片数组时只可识别其第一张图片?跟事件委托有关系吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文