Помогите исправить ошибку в коде

Бобр Добр

Профессор
Регистрация
17 Янв 2010
Сообщения
242
Реакции
37
Привет! Есть такой код:
PHP:
var hash = window.location.hash;
 
if(hash){
$active =  $('.contentnav a.'.hash); //здесь ошибка
clearInterval(play);
rotate();
rotation();
return false;
}
то есть как вместо класса подставить содержимое $hash?
 
пхп даёт о себе знать?))

$active = $('.contentnav a.'+hash)
 
пхп даёт о себе знать?))

$active = $('.contentnav a.'+hash)
cпасибо но теперь вылез новый баг)

PHP:
$(document).ready(function() {
$(".vmenu a:first").addClass("active");//ставим первую ссылку активной
var contentwidth = $(".s_block").width();
var totalcontent = $(".s_post").size();
var allcontentwidth = contentwidth * totalcontent;
$(".s_content").css({'width' : allcontentwidth});
rotate = function(){
var slideid = $active.attr("rel") - 1;
var slidedistance = slideid * contentwidth;
$(".vmenu a").removeClass('active');
$active.addClass('active');
$(".s_content").animate({
    left: -slidedistance
    }, 500 );
};
 
$(".vmenu a").click(function() {
$active = $(this);
rotate();
return false;
});
 
var hash = window.location.hash;
 
if(hash !== 0){// Теперь если якарь не передать то первая ссылка не становиться активной....
$active =  $(".vmenu a.cl"+hash.slice(1,hash.length));
rotate();
}else{
$active =  $(".vmenu a:first");
rotate();
}
 
 
});
 
кароче написал так:
PHP:
if(hash.length>0){
$active =  $(".vmenu a.cl"+hash.slice(1,hash.length));
rotate();
}
но как то оно не логично что ли... нужно функцию запускать...
кароче нуна учить js)))
 
У тебя хеш этот в разметке присутствует ? Т.е. в файрбаге у тебя реально такой класс у ссылки .vmenu a.clТВОЙ_ХЕШ (типа )?
ПС тебе в функцию ссылку передавать нужно :
PHP:
$(".vmenu a").click(function() {
$active = $(this);
rotate($active);
return false;
});
Как то так
 
У тебя хеш этот в разметке присутствует ? Т.е. в файрбаге у тебя реально такой класс у ссылки .vmenu a.clТВОЙ_ХЕШ (типа )?
ПС тебе в функцию ссылку передавать нужно :
PHP:
$(".vmenu a").click(function() {
$active = $(this);
rotate($active);
return false;
});
Как то так
имя класса = хеш

написал так(вроде всё норм:(
PHP:
$(document).ready(function() {
$(".vmenu a:first").addClass("active");
var contentwidth = $(".s_block").width();
var totalcontent = $(".s_post").size();
var allcontentwidth = contentwidth * totalcontent;
$(".s_content").css({'width' : allcontentwidth});
rotate = function(){
var slideid = $active.attr("rel") - 1;
var slidedistance = slideid * contentwidth;
$(".vmenu a").removeClass('active');
$active.addClass('active');
$(".s_content").animate({
left: -slidedistance
}, 500 );
};
$(".vmenu a").click(function() {
$active = $(this);
rotate();
return false;
});
var hash = window.location.hash;
if(hash.length>0){
$active = $(".vmenu a."+hash.slice(1,hash.length));
rotate();
}
$("dt a").click(function() {
$active = $(".vmenu a."+this.hash.slice(1,this.hash.length));
rotate();
});
});
 
Назад
Сверху