Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 像这样的粘性弹出边栏_Jquery_Jquery Animate_Css Animations_Sharethis - Fatal编程技术网

Jquery 像这样的粘性弹出边栏

Jquery 像这样的粘性弹出边栏,jquery,jquery-animate,css-animations,sharethis,Jquery,Jquery Animate,Css Animations,Sharethis,ShareThis是一个用于网站的社交共享小部件,其中在页面的远端边缘创建了一个“边栏”,单击时,它会滚动并显示一个共享选项菜单。我需要找到一个jQuery插件或javascript来模拟这个特性 我正在尝试做的一个例子可以在这里找到:在页面的最左侧 有人知道jQuery插件可以让我用自己选择的div来实现这一点吗?当然,我必须自己添加一些样式,但是要启动的库/脚本/插件会很有帮助 编辑:我制作了一个自定义js解决方案,但现在我想在再次单击时关闭该元素。下面是单击打开元素的我的JS: jQuer

ShareThis是一个用于网站的社交共享小部件,其中在页面的远端边缘创建了一个“边栏”,单击时,它会滚动并显示一个共享选项菜单。我需要找到一个jQuery插件或javascript来模拟这个特性

我正在尝试做的一个例子可以在这里找到:在页面的最左侧

有人知道jQuery插件可以让我用自己选择的div来实现这一点吗?当然,我必须自己添加一些样式,但是要启动的库/脚本/插件会很有帮助

编辑:我制作了一个自定义js解决方案,但现在我想在再次单击时关闭该元素。下面是单击打开元素的我的JS:

jQuery(function() {
    jQuery('.contact-flyout').bind('click', function() {
        jQuery('.contact-flyout-menu').animate({ marginRight: '0px'}, 500);
        jQuery('.contact-flyout').animate({ marginRight: '150px'}, 500);
    });
});

您可以使用直接向上的css来实现这一点。根据本文:

只要稍加修改,您就可以实现以下目标:


您可以使用直接向上的css来实现这一点。根据本文:

只要稍加修改,您就可以实现以下目标:


为此,我创建了一个自定义jQuery函数。以下是我最后的工作成果:

jQuery(function() {
    jQuery('.contact-flyout').bind('click', function() {

        if(jQuery('.contact-flyout-menu').css('margin-right') == "-152px") {
            jQuery('.contact-flyout-menu').animate({ marginRight: '0px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '150px'}, 500);
        } else {
            jQuery('.contact-flyout-menu').animate({ marginRight: '-152px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '0px'}, 500);
        }

    });
});

为此,我创建了一个自定义jQuery函数。以下是我最后的工作成果:

jQuery(function() {
    jQuery('.contact-flyout').bind('click', function() {

        if(jQuery('.contact-flyout-menu').css('margin-right') == "-152px") {
            jQuery('.contact-flyout-menu').animate({ marginRight: '0px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '150px'}, 500);
        } else {
            jQuery('.contact-flyout-menu').animate({ marginRight: '-152px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '0px'}, 500);
        }

    });
});

谢谢,但我需要它能兼容所有浏览器。我正在寻找一个JS解决方案,如问题中所述,谢谢,但我需要它兼容所有浏览器。我正在寻找问题中所述的JS解决方案
jQuery(function() {
    jQuery('.contact-flyout').bind('click', function() {

        if(jQuery('.contact-flyout-menu').css('margin-right') == "-152px") {
            jQuery('.contact-flyout-menu').animate({ marginRight: '0px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '150px'}, 500);
        } else {
            jQuery('.contact-flyout-menu').animate({ marginRight: '-152px'}, 500);
            jQuery('.contact-flyout').animate({ marginRight: '0px'}, 500);
        }

    });
});