Галерея
$('#small a').click(function(eventObject){
if ($('#big img').attr('src') != $(this).attr('href')){
$('#big img').hide().attr('src',$(this).attr('href'));
$('#big img').load(function(){
$(this).fadeIn(2000);
});
$(this).show(1000, 0.5);}
eventObject.preventDefault();
});
$('#small a img').click(function(){
$('#small a img').fadeTo(1000,1)
$(this).fadeTo(1000,0.6)
});
Скроллер
jQuery.fn.accessNews = function( settings ) {
settings = jQuery.extend({
headline : "Top Stories",
speed : "normal",
slideBy : 2
}, settings);
return this.each(function() {
jQuery.fn.accessNews.run( jQuery( this ), settings );
});
};
jQuery.fn.accessNews.run = function( $this, settings ) {
jQuery( ".javascript_css", $this ).css( "display", "none" );
var ul = jQuery( "ul:eq(0)", $this );
var li = ul.children();
if ( li.length > settings.slideBy ) {
var $next = jQuery( "a#next");
var $back = jQuery( "a#back");
var liWidth = jQuery( li[0] ).width();
var animating = false;
ul.css( "width", ( li.length * liWidth ) );
$next.click(function() {
if ( !animating ) {
animating = true;
offsetLeft = parseInt( ul.css( "left" ) ) - ( liWidth * settings.slideBy );
if ( offsetLeft + ul.width() > 0 ) {
ul.animate({
left: offsetLeft
}, settings.speed, function() {
if ( parseInt( ul.css( "left" ) ) + ul.width() <= (liWidth * settings.slideBy)-liWidth ) {
ul.animate({
left: 0
}, settings.speed, function() {animating = false;});
}
animating = false;
});
} else {
ul.animate({
left: 0
}, settings.speed, function() {animating = false;});
}
}
return false;
});
$back.click(function() {
if ( !animating ) {
animating = true;
offsetRight = parseInt( ul.css( "left" ) ) + ( liWidth * settings.slideBy );
if ( offsetRight + ul.width() <= ul.width() ) {
ul.animate({
left: offsetRight
}, settings.speed, function() {
if ( parseInt( ul.css( "left" ) ) >0 ) {
ul.animate({
left: -((li.length-settings.slideBy) * liWidth)
}, settings.speed, function() {animating = false;});
}
animating = false;
});
} else {
ul.animate({
left: -((li.length-settings.slideBy) * liWidth)
}, settings.speed, function() {animating = false;});
}
}
return false;
});
$(".view_all").html(settings.headline + " - " + li.length + " ( <a href=\"#\" style='color: #f00;font-weight:bold;'>Показать все</a> )</p>");
jQuery( ".view_all > a, .skip_to_news > a").click(function() {
var skip_to_news = ( jQuery( this ).html() == "Skip to News" );
if ( jQuery( this ).html() == "Показать все" || skip_to_news ) {
ul.css( "width", "auto" ).css( "left", "0" ).css( "height", "auto" );
$next.css( "display", "none" );
$back.css( "display", "none" );
if ( !skip_to_news ) {
jQuery( this ).html( "<a style='color: #f00;font-weight:bold;'>Свернуть</a>" );
}
} else {
if ( !skip_to_news ) {
jQuery( this ).html( "Показать все" );
}
ul.css( "width", ( li.length * liWidth ) );
$next.css( "display", "block" );
$back.css( "display", "block" );
}
return false;
});
}
};
демо скрипт
$(document).ready(function(){
$( "#image_slider" ).accessNews({
headline : "Всего фотографий",
speed : "normal",
slideBy : 2
});
});
Скрипт отвечающий за вывод данных из БД
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/allscripts.js"></script>
<script type="text/javascript" src="js/slider.js"></script>
<script type="text/javascript" src="js/demo.js"></script>
echo "<div class='title' align='center'><strong>".$row1['name']."</strong></div><br />
<table align='center' width='492' border='0' style='border:1px dotted #ccc;'>
<tr>
<td id='big' height='429' align='center'>
<img class = 'img_big_av' src='images/articles/".$row1['img1']."' alt='Журналы' />
</td>
</tr>
<tr>
<td style='border-top: 1px dotted #ccc'>
<div class='slider'>";
if($row1['img4'] != ''){
echo "
<a id='next'>Вперед</a>
<a id='back'>Назад</a>";}
echo"
<div class='div_slide' id='small' align='center'>
<div id='image_slider'>
<ul>";
for($i=0;$i<9;$i++)
{ $num = $i+1;
if($row1['img'.$num]!=0){
echo "
<li><a class = 'img_big_av' href='images/articles/".$row1['img'.$num]."'>
<img class = 'img_av' src='images/articles/".$row1['img'.$num]."' alt='Миниатюра".$num."' value='Миниатюра".$num."' />
</a></li>";}}
echo "</ul>
</div>
</div>
</div>
</td>
</tr>
</table>
Спустя 40 минут, 46 секунд (7.02.2011 - 16:10) nugle написал(а):
Я покапался, если убрать тег <li> то всё работает, но тогда нарушается красота