jquery附加html显示隐藏在IE中

jquery附加html显示隐藏在IE中,jquery,html,hide,append,show,Jquery,Html,Hide,Append,Show,我需要帮助显示MySQL数据库中的图像。 我有一个动态PHP/HTML表,它有多个带有分页链接的页面。 表格布局为:书名、作者、出版商、类别和图片。 我可以连接到数据库与连接脚本-工作正常。 我可以在上述位置的正确列和行处查看表的所有信息,包括图像。 此时,我将鼠标悬停在缩略图下面的链接上,并使用jQuery弹出缩略图的较大视图,这在所有方面都有效 除Internet Explorer以外的浏览器 首先,我使用连接脚本连接到数据库。 这是我用来查询数据库的代码: while ($row = my

我需要帮助显示MySQL数据库中的图像。 我有一个动态PHP/HTML表,它有多个带有分页链接的页面。 表格布局为:书名、作者、出版商、类别和图片。 我可以连接到数据库与连接脚本-工作正常。 我可以在上述位置的正确列和行处查看表的所有信息,包括图像。 此时,我将鼠标悬停在缩略图下面的链接上,并使用jQuery弹出缩略图的较大视图,这在所有方面都有效
除Internet Explorer以外的浏览器

首先,我使用连接脚本连接到数据库。
这是我用来查询数据库的代码:

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
 $bg = ($bg=='#ffffff' ? '#FCFCFC' : '#ffffff'); // Switch the background color. 
 echo '<tr bgcolor="' . $bg . '">
 <td id="books">' . '<h4>'. $row['booktitle'] .'</h4>'. '</td>
 <td id="auth">' . $row['author'] . '</td>
 <td id="publ">' . $row['publisher'] . '</td>
 <td id="cat">' . $row['category'] . '</td>
 <!--<td id="isbn">' . $row['isbn'] . '</td>--> 
 <td id="img">'.'<img src="'. $row['image'].'" width="90"/>'.'<div span="getLargeImage">'.'<a href="'. $row['image'].'" class="popup">Larger view</a>'.'</span>'.'</td>
</tr>';
while($row=mysql\u fetch\u数组($result,mysql\u ASSOC)){
$bg=($bg=='#ffffff'?'#FCFCFC':'#ffffff');//切换背景色。
回声'
“.$row['booktitle]”.“
“.$row['author']”
“.$row['publisher']”
“.$row['category']”
'.''.''.''.''.'
';
以下是jQuery脚本:

$(document).ready(function(){

    $('.popup').hover(function(e) {
        var getId = $(this).attr("id");
        var getAttr = $(this).attr("href"); 
        var html = '<div id="full_img">';
        html += '<img src="'+ getAttr +' "/>';
        html += '</div>';
        //console.log(getId);
        //console.log(getAttr); 
        $('body').append(html).children('#full_img').hide().fadeIn(100);
        $('#full_img').animate({"width" : "0px","width" : "250px"}, 100);
        $('#full_img').css('top', e.pageY + -330).css('left', e.pageX - 350);

    }, function() {

        $('#full_img').animate({"width" : "250px","width" : "0px"}, 100);
        $('#full_img').fadeOut(10);
        $('#full_img').remove();  
    });

});
$(文档).ready(函数(){
$('.popup').hover(函数(e){
var getId=$(this.attr(“id”);
var getAttr=$(this.attr(“href”);
var html='';
html+='';
html+='';
//console.log(getId);
//console.log(getAttr);
$('body').append(html).children('full#img').hide().fadeIn(100);
$('full#img')。动画({“width”:“0px”,“width”:“250px”},100);
$('full#img').css('top',e.pageY+-330).css('left',e.pageX-350);
},函数(){
$('full#img')。动画({“width”:“250px”,“width”:“0px”},100);
$('full#img')。淡出(10);
$('full#img')。删除();
});
});
正如我上面所说的,jQuery hover/show-bigher-image可以在除internetexplorer之外的所有浏览器中工作。 要查看此时的工作情况,请浏览:

任何帮助都将不胜感激。 谢谢
ussteele

正如我在评论中所说的——在您的网站上,您的行中缺少一句话:

html += '<img src="'+ getAttr +'" />';
html+='';

看到这个工作

你的演示链接不工作-我得到一个404错误。在你网站上的脚本中,你缺少图像源的结尾引号(“):
html+=”;
还有一个建议:不要在你的html中有重复的id(每行有一个
\img
td)。大多数javascript框架(如jQuery)依赖于本机浏览器实现来提高性能,这些实现可能会有所不同(通常它们只返回自上而下找到的第一个元素,但这并不能保证)而不是ID,考虑使用一个类,它是从视图源复制的:HTML+=’;当我第一次访问站点时,它不是这样的。现在,用结束<代码> <代码>它在IE8中为我工作。(BTW:什么版本的IE?)赢得XP SP3:IE 7和Mac OS X Win XP SP3 IE 8