FIDDLE:https://jsfiddle.net/m2barfho/
您好我有以下功能:
var imgs = $('img');
if ($(imgs).hasClass('cboxPhoto')) {
imgs.each(function() {
var img = $(this);
if ($(img).width() > 1000 && $(img).height() > 1000) {
img.addClass('relative');
}
else {
img.removeClass('relative');
}
});
}
我基本上说明<img>
是否有&#34; cboxPhoto&#34;然后运行each()函数来添加&#34; relative&#34;如果图像宽度大于x,则它的高度大于x。当HTML已经静态放置时,此功能正常工作。但是,这些图像是动态生成的,我已经尝试过
$('#body').load('index.html #cboxLoadedContent', function() {
}
和
$(document).ready(function () {} with .`load`
还尝试添加.on
事件侦听器,即使我没有使用绑定事件来查看它何时加载它可能会检测到。
问题:
图像是通过上传模块动态生成的,而不是静态放置。由于某种原因Colorbox不会运行我的功能。图像具有类.cboxPhoto
。如何让hasClass函数检测动态生成的图像,并运行前面的each()函数?它适用于我的小提琴,但不是我的索引?
答案 0 :(得分:0)
您可以根据图像是否具有cboxPhoto
类来选择图像,然后循环显示它们。
var imgs = $('img.cboxPhoto');
imgs.each(function() {
var img = $(this);
if (img.width() > 1000 && img.height() > 1000) {
img.addClass('relative');
} else {
img.removeClass('relative');
}
});