Jquery IE 7/8不附加在.each循环中生成的元素

Jquery IE 7/8不附加在.each循环中生成的元素,jquery,internet-explorer,append,each,Jquery,Internet Explorer,Append,Each,在我的标记中,我有一个空的来保存我的缩略图: <ul class="slideSelectors"> </ul><!-- END ul="slideSelectors" --> // GENERATE THE SLIDE SELECTORS [THUMBNAILS] $('.slides .slide').each(function() { var ID = $(this).attr('id'); var imgTag = $(this

在我的标记中,我有一个空的
来保存我的缩略图:

<ul class="slideSelectors">
</ul><!--   END ul="slideSelectors" -->
// GENERATE THE SLIDE SELECTORS [THUMBNAILS]
$('.slides .slide').each(function() {
    var ID = $(this).attr('id');
    var imgTag  = $(this).find('img').parent().html().split('meta"  -->')[1];
    var listItem = '<li><a href="#" title="'+ ID +'">'+imgTag+'</li>';
    //$('.slideSelectors').html(listItem); // loads only last list item, since .html() replaces all previous LIs
    //$('.slideSelectors').add(listItem); // NG in IE7, IE8
    $('.slideSelectors').append(listItem); // NG in IE7, IE8
});
。。。所有这些在FF、Safari中都很有魅力

然而,IE7/8似乎无法与.append()产生共鸣:缩略图被呈现(不可点击),但没有
  • 标记和锚定标记,使得缩略图无法用作选择器。我已经警告了imgTag和listItem变量,它们看起来都是正确的(尽管图像标记关闭不正确,尽管在我的.slide divs中是正确的)。使用.prepend()和.html()得到相同的结果是不好的(正如我在相关问题中看到的那样),因为我在.each()循环中,它只渲染最后一个缩略图。(我也在其他地方读过,这可能与糟糕的HTML有关,但我的代码是有效的)

    这似乎是一个已知的错误,但我还没有看到修复。除了添加另一个触发器选择器,我已经没有主意了。有人能告诉我解决方案的方向吗

    多谢各位

    代码中的Shecky

    var listItem = '<li><a href="#" title="'+ ID +'">'+imgTag+'</li>';
    
    var listItem='
  • ';

    你错过了关闭标签,其他浏览器比IE更聪明,所以它可以正常工作,但是IE不太聪明,所以你的缩略图不能在IE中点击,谢谢你,谢赫。作为一名html老手,我很不好意思错过了这一点。我忽略了这一点,因为缩略图是生成的,它们不在源代码中,否则w3验证器会给我一个提示。干杯
    var listItem = '<li><a href="#" title="'+ ID +'">'+imgTag+'</li>';
    
    var listItem = '<li><a href="#" title="'+ ID +'">'+imgTag+'</a></li>';