проблем с jquery script

mo7ika

Registered
Здравейте, тук експериментирам със съдържание което се показва посредством табове. Нямам абсолютно никаква представа защо не работи. Някой има ли идеи? И още нещо как мога да проверя дали jquery библиотеката ми е успешно импортната и готова за работа?
Много ще съм благодарен на отзовалите се!

HTML:
<ul id="tabs">
<li class="news-headline"><a href="#friends" title="Партньори">Приятели</a></li>
<li class="news-headline"><a href="#work" title="Оферти за работа">За работа</li>
<li class="news-headline"><a href="#connections" title="Поелзни връзки">Връзки</li>
<li class="news-headline-bottom"><a href="#contacts" title="За контакти">Контакти</li>
</ul>


<div id="gadjets">
<div id="friends">Приятели:</div>
<div id="work">За работа:</div>
<div id="connections">Какво трябва да видите:</div>
<div id="contacts">За контакти с мен:</div>
</div>


[js]
$(function(){
var tabs = ('div#gadjets div');
tabs.hide().filter(':first').show();

$('ul.tabs li a').click(function(){
tabs.hide();
tabs.filter(this.hash).show();
});

$('ul.tabs li a').removeClass('active');
$(this).addClass('active');
return false;

});
});

[/js]
 
В кода си си използвал ul.tabs, а в html структурата tabs е ID на ul елемента :)
Трябва да смениш <ul id="tabs"> със <ul class="tabs"> :)

Относно проверката за jQuery, ако искаш просто да провериш дали е заредена, тестваш с typeof оператора. Ако е undefined, значи библиотеката не е заредена.

[js]if (typeof window.jQuery != 'undefined') {
// ....
}[/js]
 
Проверих и нямам грешка с библиотеката, но дори и след редакцията на това за линка не се оправя...
 
Грешката е в кода ти. Обърни внимание че послените скоби }) са излишни.
Трябва само да смениш id на ul елемента с class и да редактираш кода си по този начин:
[js]jQuery(document).ready(function($){ // Предотвратява грешки при използване на jQuery.noConflict();

var tabs = $('#gadjets div'); // Тук беше изпуснал $
tabs.hide().filter(':first').show();

$('ul.tabs li a').click(function(e){
e.preventDefault(); // Хубаво е да го има. Така хаша няма да се показва в адреса при клик
tabs.hide();
tabs.filter(this.hash).show();
$('ul.tabs li a.active').removeClass('active');
$(this).addClass('active');
});
}); [/js]
 

Back
Горе