2016-08-16 5 views
1

Ich versuche Tabs mit jquery in Joomla zu tun, mit Sourcerer Plugin, aber es ist nicht wichtig.Eigenschaft 'removeClass' von null kann nicht gelesen werden

Mein Code funktioniert perfekt in JSFiddle und in lokalen .HTML Dokument, aber nicht auf Live-Website.

Es schreibt *

Uncaught TypeError: Cannot read property 'removeClass' of null

  • in 7 String

ist hier ein Code:

$(function(){ 
 
\t \t $('.tabs').on('click','a',function(e){ 
 
\t \t \t e.preventDefault(); 
 
\t \t \t $hash = this.hash; 
 
\t \t \t $link = $(this); 
 
\t \t \t 
 
     if ($link.parent('.active')){ 
 
\t \t \t $('.tabs-block .active').removeClass('active'); 
 

 
\t \t \t $('div.active').removeClass('active'); 
 
\t \t \t $($hash).addClass('active'); 
 
\t \t \t $link.parent().addClass('active'); 
 
     } 
 
\t \t }) 
 
\t 
 
})
.tabs-block div{display:none;} 
 
.tabs li{display:inline-block;} 
 
ul.tabs{margin:0;position: relative;top: 2px;} 
 
.tabs li {border:solid 2px #448ebe;border-bottom:none;border-radius: 5px 5px 0 0;} 
 
.tabs li.active{background-color:#fff;border-color:#66b366;opacity:1;} 
 
.tabs-block div.active {display:block; \t border: solid #66b366 2px;border-radius: 5px;padding-left:10px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="tabs-block"> 
 
<ul class="tabs"> 
 
<li class="active"><a href="#tab1"><img src="/images/other/fb.png"></a></li> 
 
<li><a href="#tab2"><img src="/images/other/i.png"></a></li> 
 
<li><a href="#tab3"><img src="/images/other/tw.png"></a></li> 
 
<li><a href="#tab4"><img src="/images/other/vk_2.png"></a></li> 
 
</ul> 
 
<div class="active" id="tab1"> 
 
<p>Tab 1</p> 
 
</div> 
 
<div class="" id="tab2"> 
 
<p>Tab 2</p> 
 
</div> 
 
<div class="" id="tab3"> 
 
<p>Tab 3</p> 
 
</div> 
 
<div class="" id="tab4"> 
 
<p>Tab 4</p> 
 
</div> 
 
</div>

+0

Wie fügen Sie diese js in die Haupt-HTML-Seite ein? Ist es in einer separaten js-Datei? – brk

+0

Ja, in einer separaten Datei sieht es so aus:

+0

aber die enthaltene' html' Datei Ich sehe keine Referenz von 'tabs.js' – brk

Antwort

0

Können Sie bitte überprüfen Sie Ihre Logik?

In der ersten Zeile entfernen Sie Klasse "aktiv", die auch von unten Element entfernt werden.

<div class="active" id="tab1"> 

und elment wird dies geworden:

<div id="tab1"> 

Nun ist es nicht mit einer aktiven Klasse und Ihre zweite Anweisung div werden alle passenden Elemente nicht finden und Sie werden Exception.

+0

ich reparierte dieses und habe jetzt $ link.parent ist keine Funktion D: –

+0

Lösung in den ersten Pfostenkommentaren –

Verwandte Themen