Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I forgot about jquery's <a href="http://jquery.com/index/" rel="nofollow"><code>index()</code> function</a>.</p> <p>You can try something like this:</p> <p>HTML</p> <pre><code>&lt;div class="row span10 center clearfix"&gt; &lt;a href="http://diyshedsupply.com/step-1-tab/" class="show_hide btn btn-primary pull-right"&gt;+ -&lt;/a&gt; &lt;div class="pull-right"&gt;&lt;strong&gt; Specs and Details&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div class="row span10 center slidingDiv"&gt; &lt;div class="row span9 center clearfix"&gt; &lt;div id="ajax-content0" data-fetched="false"&gt;Default Content&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row span10 center clearfix"&gt; &lt;a href="http://diyshedsupply.com/step-1-tab/" class="show_hide btn btn-primary pull-right"&gt;+ -&lt;/a&gt; &lt;div class="pull-right"&gt;&lt;strong&gt; Specs and Details&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div class="row span10 center slidingDiv"&gt; &lt;div class="row span9 center clearfix"&gt; &lt;div id="ajax-content1" data-fetched="false"&gt;Default Content&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row span10 center clearfix"&gt; &lt;a href="http://diyshedsupply.com/step-1-tab/" class="show_hide btn btn-primary pull-right"&gt;+ -&lt;/a&gt; &lt;div class="pull-right"&gt;&lt;strong&gt; Specs and Details&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div class="row span10 center slidingDiv"&gt; &lt;div class="row span9 center clearfix"&gt; &lt;div id="ajax-content2" data-fetched="false"&gt;Default Content&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; </code></pre> <p>jQuery</p> <pre><code>$('.show_hide').click(function (e) { var index = $('.show_hide').index(this); //which one am I working with? //check if content has already been loaded via ajax if($("#ajax-content" + index).attr('data-fetched') === 'false') { $.ajax({ url: this.href, beforeSend: function () { $('#ajax-content' + index).html("&lt;div class='loading'&gt;&lt;img src='/wp-content/themes/diy/img/ajax-loader.gif' alt='Loading' /&gt;&lt;/div&gt;"); }, success: function (html) { $("#ajax-content" + index).html(html); $("#ajax-content" + index).attr('data-fetched', 'true'); $('.show_hide:eq(' + index + ')').addClass('close-tabs'); handletabs(index); $('.slidingDiv:eq(' + index + ')').slideToggle(1600, function () { /* do anything after animation is complete */ }); $('.show_hide:eq(' + index + ')' + ' a').removeClass('current'); $(this).addClass('current'); } }); } else { $('.slidingDiv:eq(' + index + ')').slideToggle(1600); } e.preventDefault(); }); function handletabs(index) { $('.slidingDiv:eq(' + index + ')' + ' ul.tabs').each(function (e) { //foreach new tab //bind to click event $(this).on('click', function (e) { //remove active class from all links in parent('tabby') $(e).parents('tabby').children('a').removeClass('active'); //add to new link $(e).addClass('active'); //hide all divs in parent('tabby') $(e).parents('tabby').children('div').hide(); //use href to show div $($(this).attr('href')).show(); // Prevent the anchor's default click action e.preventDefault(); }); }); } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload