0

レスポンシブ デザインでこの単純な if 構造に苦労しています。基本的には、ドロップダウンからフロート リストに切り替わる nav 要素です。960px 内でサイズ変更すると、ドロップダウンが機能しません。現在のコードに何か問題がありますか?

$(window).load(function(){
var windowWidth = $(window).width();
function checkSize() {
    if(windowWidth < 960) {
        quickDrop();
    }
}
function quickDrop(){
    $("#quicklinks").hover(function() {
        $("#quicklinks > ul").stop(true,true).slideDown("fast");
        $sitesArrow.css({ WebkitTransform: 'rotate(270deg)'});
        $sitesArrow.css({ '-moz-transform': 'rotate(270deg)'});
    }, function(){
        $("#quicklinks > ul").stop(true,true).slideUp("fast");
        $sitesArrow.css({ WebkitTransform: 'rotate(0deg)'});
        $sitesArrow.css({ '-moz-transform': 'rotate(0deg)'});
    });
}
checkSize();

$(window).resize(function(){
    checkSize();
});
});

ありがとうございました!

http://jsfiddle.net/bdGPz/

4

1 に答える 1

2

var windowWidth = $(window).width();関数内に配置する必要がありますcheckSize()

function checkSize() {
    var windowWidth = $(window).width();
    if(windowWidth < 960) {
        quickDrop();
    }
}

それ以外の場合は、関数をリクエストするたびwindowWidthに値を取得するだけではなく、値を取得します。window.loadcheckSize()

于 2013-07-17T10:21:27.763 に答える