Цитата:
Да я понял что Вы имели ввиду. Идея классная, но прикол в том что этот слайдер еще и должен по времени сам листаться. и еще в чем прикол что картинки которые по бокам должны быть в background, так как ширина не должна превышать 1000 pх. Почитаю еще документацию. Если что напишу еще! Пока что спс всем! |
Данная структура не мешает использовать setTimeout или setInterval. И background-м они тоже вполне могут быть.
О переносе слайдов в начало/конец почитайте про insertAfter(), insertBefore() и appendTo() (методы jQuery) |
Цитата:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<style type="text/css">
#Wrap {
width:480px;
position:relative;
text:align:center;
}
#SlideWrp{
display:inline-block;
}
#Prev,#Next {
border:red solid 1px;
padding:2px;
cursor:pointer;
}
#Prev {
float:left;
}
#Next {
float:right;
}
div.Slide {
//float:left;
float:right;
height:100px!important;
width:200px;
padding:6px;
border:blue solid 1px;
}
#SlideWrp {
height:114px; //height+border+padding;
overflow-y:hidden; //не расширение до $(".Slide:not('.active')").hide();
width:430px;
}
#indexActive{
float:right;
margin-right:50px;
margin-top:10px;
}
span[id^="active_Ind"]{
float:right;
border:blue solid 2px;
height:3px;
width:3px;
margin:3px;
}
span[id^="active_Ind"].active{
border: red solid 2px;
}
</style>
<div id="Wrap">
<span id="Prev">←</span><span id="Next">→</span>
<div id="SlideWrp">
<div class="Slide active">1</div>
<div class="Slide active">2</div>
<div class="Slide">3</div>
<div class="Slide">4</div>
<div class="Slide">5</div>
</div><br />
<div id="indexActive"></div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$(".Slide:not('.active')").hide();
var intervalAutoId;
var LsL=$(".Slide").length;
$(".Slide").each(function(i){
$(this).attr('data',i);
$("#indexActive").prepend('<span id="active_Ind_'+i+'"></span>')
});$("#indexActive #active_Ind_0").addClass('active');
function setIndActive(){
var j=$(".Slide.active:first").attr('data');
$("#indexActive span[id^='active_Ind_']").removeClass('active');
$("#indexActive span[id='active_Ind_"+j+"']").addClass('active');
}
$("#Next").click(function(){
UserNoActSlide=false;
$(".Slide:first").removeClass('active').hide('slow',function () {$(this).appendTo("#SlideWrp")});
$(".Slide:eq(2)").addClass('active').show('slow');
setIndActive();
});
$("#Prev").click(function(){
UserNoActSlide=false;
$(".Slide.active:last").removeClass('active').hide('slow');
$(".Slide:last").prependTo("#SlideWrp").addClass('active').show('slow');
setIndActive()
});
// АВТОПРОКРУТКА
var UserNoActSlide=true;
$("#Wrap").bind('mouseenter mousemove',function(){ //Cброс автозапуска по наведению
UserNoActSlide=false;//alert("A")
clearInterval(intervalAutoId);
UserNoActSlide=false;
}).mouseleave(function(){ //Разрешаем автозапуск по сходу курсора
clearInterval(intervalAutoId);
UserNoActSlide=true;
});
setInterval(function(){ //Периодический тест активности и автозапуск
if(UserNoActSlide){
intervalAutoId=setInterval(function(){
UserNoActSlide=false;
$("#Next").click();
},3000); // Интервал автопрокрутки
}
},10000); // Интервал Теста;
});
</script>
|
Deff,
Да это оно спасибо огромное... Есть еще одна проблемка мне для навигации не нужны стрелочки, переход на определенную картинку должен быть при нажатии на нижние квадратики, которые находятся в блоке indexActive подскажите что прописать в ссылку? вот в этом месте
$(".Slide").each(function(i){
$(this).attr('data',i);
$("#indexActive").prepend('<a href=" "><span id="active_Ind_'+i+'">'+(i+1)+'</span></a>')
});$("#indexActive #active_Ind_0").addClass('active');
|
Как я понял мне надо прописать функцию для клика на id="active_Ind"
Вот что я написал но оно не хочет работать
$("#indexActive span[id^='active_Ind_']").click(function(){
var goToNum = attr('data');
animSlide(goToNum);
});
|
IgorArhangel,
Чичас гляну... полчаса потерпите |
и еще интересно если разместить в background картинки.. они большие в ширину 700 пикселей.
ясно дело что на экран не поместятся. С помощью какой функции можно сделать чтоб ширина слайдера была 1000 пх, а отображалась одна картинка по центре а две которые по бокам на половину? |
IgorArhangel,
<script src="http://code.jquery.com/jquery-latest.js"></script>
<style type="text/css">
#Wrap {
width:480px;
position:relative;
text:align:center;
}
#SlideWrp{
display:inline-block;
}
#Prev,#Next {
border:red solid 1px;
padding:2px;
cursor:pointer;
}
#Prev {
float:left;
}
#Next {
float:right;
}
div.Slide {
//float:left;
float:right;
height:100px!important;
width:200px;
padding:6px;
border:blue solid 1px;
}
#SlideWrp {
height:114px; //height+border+padding;
overflow-y:hidden; //не расширение до $(".Slide:not('.active')").hide();
width:430px;
}
#indexActive{
float:right;
margin-right:30px;
margin-top:10px;
}
span[id^="active_Ind"]{
cursor:pointer;
float:right;
border:blue solid 2px;
height:6px;
width:6px;
margin:6px;
}
span[id^="active_Ind"].active{
border: red solid 2px;
}
</style>
<div id="Wrap">
<span id="Prev">←</span><span id="Next">→</span>
<div id="SlideWrp">
<div class="Slide active">1</div>
<div class="Slide active">2</div>
<div class="Slide">3</div>
<div class="Slide">4</div>
<div class="Slide">5</div>
</div><br />
<div id="indexActive"></div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$(".Slide:not('.active')").hide();
var intervalAutoId;
var LsL=$(".Slide").length;
$(".Slide").each(function(i){
$(this).attr('data',i);
$("#indexActive").prepend('<span id="active_Ind_'+i+'"></span>')
});$("#indexActive #active_Ind_0").addClass('active');
function setIndActive(){
var j=$(".Slide.active:first").attr('data');
$("#indexActive span[id^='active_Ind_']").removeClass('active');
$("#indexActive span[id='active_Ind_"+j+"']").addClass('active');
}
$("#Next").click(function(){
UserNoActSlide=false;
$(".Slide:first").removeClass('active').hide('slow',function () {$(this).appendTo("#SlideWrp")});
$(".Slide:eq(2)").addClass('active').show('slow');
setIndActive();
});
$("#Prev").click(function(){
UserNoActSlide=false;
$(".Slide.active:last").removeClass('active').hide('slow');
$(".Slide:last").prependTo("#SlideWrp").addClass('active').show('slow');
setIndActive()
});
$("#indexActive > span[id^='active_Ind']").click(function(){
UserNoActSlide=false;
$("#indexActive span[id^='active_Ind_']").removeClass('active');
$(this).addClass('active');
var Id= '' + $(this).attr('id').substring(11);//alert(Id);
$(".Slide").each(function(i){
if($(this).attr('data')==Id) return false;
$(this).appendTo("#SlideWrp");
});
$(".Slide.active:first").removeClass('active').hide();
$(".Slide:eq(0)").addClass('Preactive').show('slow');
$(".Slide.active:last").removeClass('active').hide();
$(".Slide:eq(1)").show('slow').addClass('active');
$(".Slide:eq(0)").show('slow').toggleClass('Preactive,active');
});
// АВТОПРОКРУТКА
var UserNoActSlide=true;
$("#Wrap").bind('mouseenter mousemove',function(){ //Cброс автозапуска по наведению
UserNoActSlide=false;//alert("A")
clearInterval(intervalAutoId);
UserNoActSlide=false;
}).mouseleave(function(){ //Разрешаем автозапуск по сходу курсора
clearInterval(intervalAutoId);
UserNoActSlide=true;
});
setInterval(function(){ //Периодический тест активности и автозапуск
if(UserNoActSlide){
intervalAutoId=setInterval(function(){
UserNoActSlide=false;
$("#Next").click();
},3000); // Интервал автопрокрутки
}
},10000); // Интервал Теста;
});
</script>
Цитата:
2. Укажите нужные высоту и ширину картинок( пока только ширина) Цитата:
|
Цитата:
![]() картинки которые не помещаются они будут но за экраном.. на картинке нарисован экран монитора... если монитор будет большой будет влазить большая часть изображения. Огромное спасибо за помощь!!! |
Цитата:
|
| Часовой пояс GMT +3, время: 22:05. |