2011-12-14 78 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

相關問題