请求将指定jQuery代码转换为原生JavaScript代码
没问题!我帮你把这段jQuery代码转换成功能完全一致的原生JavaScript,代码如下:
document.addEventListener('DOMContentLoaded', function() { // 选中所有class为help-image的元素 const helpImages = document.querySelectorAll('.help-image'); helpImages.forEach(function(el) { // 创建目标a标签并设置href属性 const link = document.createElement('a'); link.href = '#help'; // 将当前元素的所有子节点(包括文本、元素等)移动到a标签内 while (el.firstChild) { link.appendChild(el.firstChild); } // 把包裹好的a标签放回原元素中 el.appendChild(link); }); });
对应原jQuery代码的细节说明:
$(document).ready(...)→document.addEventListener('DOMContentLoaded', ...):两者都是等待DOM结构完全加载完成后执行代码,确保我们操作的元素已经存在于页面中$('.help-image').each(...)→document.querySelectorAll('.help-image').forEach(...):选中所有拥有help-image类的元素,并逐个遍历处理$(this).contents().wrap('<a href="#help"></a>')→ 原生创建a标签并迁移子节点:jQuery的contents()会获取元素的所有子节点(包括文本节点、注释等),我们用while (el.firstChild)循环把所有子节点移动到新建的a标签里,再把a放回原元素,和原代码的包裹效果完全一致
如果还有不清楚的地方,随时问我!
内容的提问来源于stack exchange,提问作者HlemHlems
相关产品推荐
相关产品推荐

