5

那么谁没有ie7的问题?jQuery .html()不在ie7中显示任何数据,但ie8工程

看来我无法得到IE7识别一些数据。

我为我的一个客户创建了一个wordpress主题,这允许他们通过管理员在wordpress meta fields中输入额外的信息,以便他们可以显示额外的信息。

我写了一个小的jQuery脚本,看图片alttitle收集此信息并写入一个div。

下面是我的脚本。

<script type="text/javascript"> 
    //<![CDATA[ 
    jQuery(document).ready(function(){ 
     var title = jQuery('.attachment-post-thumbnail').attr('title'); 
     var alt = jQuery('.attachment-post-thumbnail').attr('alt'); 
     jQuery('#vehicle-alt').html('<h2 class="car-detail">'+title+'</h2><p>'+alt+'</p>'); 
    }); 
    //]]> 
</script> 

当我在ie7中查看源代码时,没有任何已传递的信息。

在div是一样简单<div id="vehicle-alt"></div>

回答

3

html的()方法使用浏览器的innerHTML property.Some浏览器可能不生成DOM恰好复制提供的HTML源。

看来,jQuery的html()方法调用现有的DOM对象的方法empty()。因此,请尝试在div上使用empty()而不是html(),然后尝试ap​​pend()。例如

$('#vehicle-alt').append('html content'); 

也请尝试从JQuery提供的其他dom manipulation menthods

+0

尝试了这种特殊的方法并没有解决问题。 – ApPeL 2011-03-03 14:07:00

+0

我给你的链接没有任何其他方法为你工作?请检查浏览器是否显示任何javascript错误? – isurusndr 2011-03-04 05:51:29

+0

如果不尝试使用javascript innerHTML方法。例如, ; document.getElementById('vehicle-alt')。innerHTML ='html content'; – isurusndr 2011-03-04 06:52:31

0

我有这个错误,当有两个或更多的元素具有相同的ID。它只发生在IE7中。

修正当然是为了确保每个元素都有唯一的ID。

2

我也有这个bug。

解决的办法是:验证我试图打印或添加的html内容。

我尝试了几个jQuery的函数:html,append,appendTo ...但没有任何工作。

在我的情况下,html有一个额外的关闭标签。我删除了它,现在一切正常。

相关问题