You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery each()与append()函数失效问题求助排查

问题分析与解决方案

嘿,我仔细瞅了你的代码,发现each()函数没正常工作主要是两个小问题导致的,咱们一个个捋清楚:

1. HTML标签语法错误

你在动态生成img标签的时候,src属性没有正确闭合引号,导致浏览器无法解析这个标签,看起来就像each循环没执行一样。

错误代码:

$(this).append('<img src="//img.youtube.com/vi/' + videoId + '/hqdefault.jpg />');

修正后:

$(this).append('<img src="//img.youtube.com/vi/' + videoId + '/hqdefault.jpg" />');

注意在hqdefault.jpg后面补上闭合的双引号",让src属性的语法合法。

2. 函数调用时机不对

你定义了getThumbnail函数,但如果没有在DOM加载完成后调用它,$('.carousel-focus-item')就找不到对应的DOM元素,each()自然不会循环执行。

解决方法有两种:

  • 把函数调用放在$(document).ready()里,确保DOM就绪后再执行:
    $(document).ready(function() {
        getThumbnail();
    });
    
  • 直接把你的JS代码放在HTML的</body>标签之前,这样浏览器执行JS时,目标DOM元素已经加载完毕了。

测试验证

修正后可以在each循环里加一行console.log(videoId),看看控制台能不能打印出每个元素的data-embed值,以此确认循环确实在正常运行。

内容的提问来源于stack exchange,提问作者Sandra Willford

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:44:22