1

しばらくの間私を悩ませてきたもの。これら 3 つのコード セットを組み合わせるにはどうすればよいでしょうか。

$(".fly-out-menu").toggle(
      function () {
        $('#page').animate({left: 250}, 'fast'); },
      function () {
        $('#page').animate({left: 0}, 'fast'); }
);
$(".fly-out-menu").toggle(
      function () {
        $('.sticky-container').animate({left: 250}, 'fast'); },
      function () {
        $('.sticky-container').animate({left: 0}, 'fast'); }
);
$(".fly-out-menu").toggle(
      function () {
        $('body').css('position','fixed') },
      function () {
        $('body').css('position','static') }
);

ありがとう、R

4

2 に答える 2

5

そのように?

$(".fly-out-menu").toggle(
    function(){
        $('#page, .sticky-container').animate({left: 250}, 'fast');
        $('body').css('position','fixed');
    },
    function(){
        $('#page, .sticky-container').animate({left: 0}, 'fast');
        $('body').css('position','static');
    }
);

@undefinedが指摘しているように、このイベントは非推奨になりました。
これを自分で処理する1つの方法は次のとおりです。

$(".fly-out-menu").on("click", function(){
    var t = $(this);
    if(!t.data("alreadyclicked")){
        t.data("alreadyclicked", true);
        $('#page, .sticky-container').animate({left: 250}, 'fast');
        $('body').css('position','fixed');
    } else {
        t.data("alreadyclicked", false);
        $('#page, .sticky-container').animate({left: 0}, 'fast');
        $('body').css('position','static');
    }
});
于 2012-12-14T23:40:07.837 に答える
1

こういう意味ですか?

$(".fly-out-menu").toggle(
function () {
    $('#page').animate({left: 250}, 'fast'); 
    $('.sticky-container').animate({left: 250}, 'fast');
    $('body').css('position','fixed');
},
function () {
    $('#page').animate({left: 0}, 'fast');
    $('.sticky-container').animate({left: 0}, 'fast');
    $('body').css('position','static');
}
);

またはこのように:

$(".fly-out-menu").toggle(
function () {
    $('#page, .sticky-container').animate({left: 250}, 'fast');
    $('body').css('position','fixed');
},
function () {
    $('#page, .sticky-container').animate({left: 0}, 'fast');
    $('body').css('position','static');
}
);
于 2012-12-14T23:40:30.390 に答える