jQuery:如何检测是否加载了LI元素

jQuery: How to detect if an LI element is loaded?

本文关键字:加载 是否 LI 元素 检测 何检测 jQuery      更新时间:2023-09-26

所以我得到了以下HTML:

<div id="featured">
    <ul>
        <li><img src="<?php echo get_bloginfo( 'stylesheet_directory' ) . '/images/tmp-featured-1.jpg'; ?>" /></li>
        <li><img src="<?php echo get_bloginfo( 'stylesheet_directory' ) . '/images/tmp-featured-2.jpg'; ?>" /></li>
        <li><img src="<?php echo get_bloginfo( 'stylesheet_directory' ) . '/images/tmp-featured-3.jpg'; ?>" /></li>
        <li><img src="<?php echo get_bloginfo( 'stylesheet_directory' ) . '/images/tmp-featured-4.jpg'; ?>" /></li>
    </ul>
</div>

当我使用:

$(function(){
    $('#featured').init();
});

触发代码。内容(在本例中只有单个img元素,但可以是更多,如元数据或视频)尚未加载。结果,在init中调用时的宽度和高度将返回0,0。我跟踪了这个值,一旦加载了图像,li就会相应地调整大小。我试着做一些类似的事情:

$('#featured ul li').load(function() {
    alert('its loaded');
});

但它不起作用。有人有想法吗?

不是使用$(function() {绑定到文档就绪处理程序,而是在加载所有图像后使用$(window).load()作为此火:

$(window).load() {
    $('#featured').init();
});