2011-12-14 62 views
0

我正在改进一个网站 - http://vse-v-nas.com.ua(链接只是为了重现步骤,如果有人想要更深入)。'调整大小'事件处理程序不会发生

的内容右列:

// html 
<td id="sidebar-right">...</td> 
// css 
#sidebar-right { 
    width: 209px; 
    padding: 10px; 
} 

即$( '#侧边栏右')宽()应该是229px 和它是在Chrome,但它在 '245px' 值。 FF 8.0.1和IE 9.0.3

我不知道为什么在FF和IE中的内容的右列宽度比Chrome, ,但我想这个图像(在右上角 - $(' img.header-image'))与下面的右列相同(例如在Chrome中)。

我在标签结束之前在脚本中添加了脚本,以便为图片和右侧栏设置相等的宽度。

<script type="text/javascript" language="javascript"> 
    $(document).ready(function() { 
    var $headerImage = $('img.header-image'); 
    var $rightSidebar = $('#sidebar-right'); 

    // in this line $rightSidebar.width() is 229px in every browser... 

    $rightSidebar.resize(function() { 
     // event handler doesn't occur after width changing in IE and FF... 
     alert($headerImage.width()); 
     alert($(this).width()); 
    }); 
    }); 
</script> 

事件处理程序不会发生,但大小在页面加载后发生变化。 有人有想法来帮助我解决这个问题!

回答

1

听起来像上面的答案已回答你的直接问题。至于为什么它在Safari和Firefox中是245,它可能是由不同浏览器推测的默认CSS,特别是边界间距,因为你使用了很多表格。内容越大,侧栏div的宽度将比229px更宽。

+0

嗨,大卫,正如我写的,我正在改进这个网站之前的开发者。无论如何,我将在.NET以后重写它。但它现在应该正确工作。 – 2011-12-14 17:02:24

相关问题