JQuery - 多个显示/隐藏div与外部链接

时间:2014-09-17 13:11:18

标签: javascript jquery html css hide

我有完整的代码http://jsfiddle.net/s2CtY/16/。但是我需要的是

1.单击以显示DIV并打开外部链接 2.通过PHP允许多个这样的

有人可以帮忙吗?

$(document).ready(function () {
    $('.sub-nav ul').css("display","none");
    // Watch for clicks on the "slide" link.
    $('.sub-nav-btn').click(function () {
        $(this).next(".sub-nav ul").slideToggle(400);
        $(this).slideToggle(400);
        return false;
    });
    $('.sub-nav').on('click', 'ul', function () {
        $(this).prev(".sub-nav-btn").slideToggle(400);
        $(this).slideToggle(400);
        return false;
    });
});

HTML

<div class="sub-nav">
 <div class="sub-nav-btn"><a href="http://www.yahoo.com">btn1</a></div>
  <ul>btn1 slide data
  </ul>
</div>
<div class="sub-nav">
 <div class="sub-nav-btn">btn2</div>
  <ul>btn2 data slide
  </ul>
</div>

1 个答案:

答案 0 :(得分:1)

您应该可以使用window.open();完成此操作 将链接URL捕获到var中,并将该var传递给window.open(),如下所示:

$(document).ready(function () {
        $('.sub-nav ul').css("display","none");
        // Watch for clicks on the "slide" link.
        $('.sub-nav-btn').click(function () {
            var url = $(this).children('a').attr('href');
            if(url != null){
                window.open(url);
            }
            $(this).next(".sub-nav ul").slideToggle(400);
            $(this).slideToggle(400);
            return false;
        });
        $('.sub-nav').on('click', 'ul', function () {
            $(this).prev(".sub-nav-btn").slideToggle(400);
            $(this).slideToggle(400);
            return false;
        });
    });

DEMO 希望这有帮助!