Jquery slideToggle由页面上的单独链接提示

时间:2017-07-12 21:01:06

标签: jquery slidetoggle

我尝试在页面顶部设置一个链接,在我的网站的标题之间打开一个部分,在这种情况下标题(或标题)有ID,这些在链接中引用(' HREF ="#heading_3"&#39)。我想仅为此目的使用jquery。



var _aTag = "a";
var _Header = "h3, h4";
$(document).ready(function(){
$(_aTag).click(function(){
		$element = $(this);
		$elString = $element.attr('href');
		$elString = $elString.substring(1);
		if ($element.attr('class') == 'ToCh') {
        $header = document.getElementById($elString);
	    $content = $header.parent().nextUntil(_Header);
        $content.slideToggle();
			}
    });
	});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="ToCh" href="#heading_3"> Test link</a>
<h2 id="heading_2">Header W</h2>
<p>Text</p>
<h3 id="heading_3">Header X</h3>
<p>Text</p>
<h4 id="heading_4">Header Y</h4>
<p>Text</p>
<h4 id="heading_5">Header Z</h4>
<p>Text</p>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

以下是有关如何执行此操作的代码示例:

$(document).ready(function(){
    $('a.ToCh').click(function(){
            var $element = $(this);
            var linkString = $element.attr('href');
            var $content = $(linkString).next();

            $content.slideToggle();
        });
    });

请注意,我首先选择一个具有所需类的锚,而不是稍后在代码中检查。 另请注意,为了按ID选择元素,您需要在id字符串之前应用#,因此在您的情况下无需删除它。