IE中的Css问题。 Jquery图像/ swf交换

时间:2011-07-15 00:01:45

标签: jquery css internet-explorer debugging flash

我有以下代码:

                <html>
                <head>
                <script type="text/javascript" language="javascript" src="jquery/jquery-1.5.1.js"></script> 
                <script type="text/javascript" language="javascript" src="http://jquery.thewikies.com/swfobject/jquery.swfobject.1-1-1.min.js"></script>
                <style>
                div#test{background:#ffffff;width:360px;height:360px;display:none;z-index:5;position: fixed;}
                #mainimage{z-index:-1;}
                </style>
                </head>
                <body>
                <table border="1">
                    <tr>
                        <td><div id="test"></div>
                            <div id="mainimage"><img id="full_image" src="1.jpg" alt="0" width="360" height="360" border="0" /></div>
                            <span id="flash" style="width:360px;height:360px;border:0px;margin:0px;padding:0px;z-index:-1;">
                            <object data="fireworks.swf" type="application/x-shockwave-flash" id="flash_99458582" width="360" height="360">
                                <param name="movie" value="fireworks.swf"><param name="wmode" value="opaque">
                            </object>
                            </span>
                        </td>
                        <td>
                            <table>
                                <tr>
                                    <td><a href="1.jpg" class="thumbnail"><img src="1.jpg" width="70" height="70"></a></td>
                                </tr>
                                <tr>
                                    <td><a href="2.jpg" class="thumbnail"><img src="2.jpg" width="70" height="70"></a></td>
                                </tr>
                                <tr>
                                    <td><img src="3.jpg" width="70" height="70" class="video"></td>
                                </tr>
                            </table>
                        </td>
                    </tr>
                </table>    
                <br /><br />
                <script type="text/javascript">
                $(document).ready(function() {
                    $("#flash").hide();
                    $('a.thumbnail').click(function(){  
                    var src = $(this).attr('href');

                    $("#test").fadeIn("slow", function () {
                        //$("#test").fadeOut("slow");
                        $("#flash").hide();
                        $("#test").hide();
                        $("img#full_image").show();
                        $("img#full_image").css({ opacity: 0 });
                        //alert(src);
                        if (src != $('img#full_image').attr('src').replace(/\?(.*)/,'')){
                            $('img#full_image').attr('src', src+'?'+Math.floor(Math.random()*(10*100)));                
                        }

                        $('img#full_image').stop().animate({opacity: '1'}, 'slow');
                    });



                    //alert("here");
                    return false;
                    });     
                    $('img.video').click(function(){
                        $("img#full_image").fadeOut("slow", function () {
                            $("#test").show();
                            $("#flash").show();
                            $("img#full_image").hide();
                            $("#test").fadeOut("slow");

                        }); 
                        return false;

                    });

                });
                </script>
                </body>
                </html>

这基本上有一些拇指,当你点击它时,它被加载为主图像。单击时,还有一个拇指可以加载swf文件。当加载主图像/ swf时,我也有淡入/淡出效果。这适用于chrome和firefox,但是当我在IE中尝试时,由jquery加载的div将内容向下推。任何人都可以帮忙调试吗?

由于

1 个答案:

答案 0 :(得分:0)

您没有doctype,因此您的网页正在使用Quirks Mode

首先添加HTML5 doctype:

作为第一行
<!DOCTYPE html>

我实际上没有测试是否能解决问题,但机会很好。

例如,您正在使用position: fixed,这在IE中的Quirks模式下无效。