简单的JQuery Logic

时间:2014-02-12 04:20:17

标签: jquery

我想我把自己写进一个角落,不知道如何备份。我真的只需要单独关闭onclick以及关闭所有选项。

http://jsfiddle.net/7U9QY/4/

$(function() {
    $('a[href*=#]:not([href=#])').click(function() {
        if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
            var target = $(this.hash);
            target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
            if (target.length) {
                $('html,body').animate({
                    scrollTop: target.offset().top
                }, 1000);
                return false;
            }
        }
    });
});

$(function() {
    $('.bar').click(function() {
        $('.full').toggle(600);
    });

});

2 个答案:

答案 0 :(得分:0)

解决方案很简单,你需要有一个相对选择器来切换你的完整类元素。如果你的父div具有某种可选择的属性/类会更好,但是现在恰好第一个父div满足相对选择器来定位栏旁边的.full div

$('.full', $(this).parents('div:first')).toggle(600);

您可以在此处查看有效的解决方案:http://jsfiddle.net/7U9QY/5/

答案 1 :(得分:0)

Fiddle Demo

$(function () {
    $('.bar').click(function () {
        $(this).closest('a').next().next().toggle(600);
    });
});

<小时/> 找到最接近的a代码,而不是找到next next元素和toggle
.closest()

  

描述:对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。

.next()

this keyword