我想使用下面的代碼來刪除窗口上的類resize爲響應主題中的菜單,但它不會工作。在窗口上刪除/添加類調整大小jquery
(function() {
var $window = $(window),
$ul = $('ul.nav');
$window.resize(function(){
if ($window.width() < 979) {
return $ul.addClass('float');
}else{
$ul.removeClass('float')};
}).trigger('resize');
});
.float沒有用.css定義。如果子菜單(在管理區域中動態生成)變得太大而無法放入容器中,它就在那裏。
下面是生成代碼「浮動效果」的時候,子菜單是大
$('.float > li.dropdown > a + ul').each(function(index, element) {
// IE6 & IE7 Fixes
if ($.browser.msie && ($.browser.version == 7 || $.browser.version == 6)) {
var category = $(element).find('a');
var columns = $(element).find('ul').length;
$(element).css('width', (columns * 143) + 'px');
$(element).find('ul').css('float', 'left');
}
var menu = $('.float').offset();
var dropdown = $(this).parent().offset();
i = (dropdown.left + $(this).outerWidth()) - (menu.left + $('.float').outerWidth());
if (i > 0) {
$(this).css('margin-left', '-' + (i + 5) + 'px');
}
});
這裏的菜單代碼的開始
<?php if ($categories) { ?>
<div class="menu">
<ul class="nav float">
<?php foreach ($categories as $category) { ?>
<li class="dropdown"><a href="<?php echo $category['href']; ?>">
<?php echo $category['name']; ?></a>
.
.
.
.
ecc.
任何其他的想法,除去一部分/在窗口大小調整上添加類「.float」? 在此先感謝您的任何提示。
編輯
試圖一點點後,我找到了名爲.css查詢
@media (max-width: 979px)
現在,它的工作的替代解決方案,但我仍然不明白爲什麼了jQuery調整大小不起作用。
已經有一個'$(文件)。就緒(函數(){'在外部.js文件的最開始,它調用大部分代碼 – Someone33