这是我的JSP页面:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<script src="js/jquery.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$('#carouselh').jsCarousel({ autoscroll: false, circular: true, masked: false, itemstodisplay: 5, orientation: 'h' });
});
function change()
{
$.ajax({
type: "POST",
url: 'demoo.jsp',
data: { },
success: function(result)
{
document.getElementById('main').innerHTML=result;
}
});
}
</script>
</head>
<body>
<button onclick="change()">Click Me!</button>
<div id="main">
</div>
</body>
<script src="js/jsCarousel-2.0.0.js" type="text/javascript"></script>
<link href="css/jsCarousel-2.0.0.css" rel="stylesheet" type="text/css" >
</html>
这是我的demoo.jsp页面:
<div id="carouselh">
<div>
<img alt="" src="images/lapi_large.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/mobile_small.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/lapi_large.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/mobile_small.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/lapi_large.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/mobile_small.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/mobile_small.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
<div>
<img alt="" src="images/mobile_small.jpg" style="height: 100px;width: 100px;float: left;" /><br />
</div>
</div>
这是jsCarousel-2.0.0.js:
(function($) {
$.fn.extend({
jsCarousel: function(options) {
var settings = $.extend({
scrollspeed: 1500,
delay: 5000,
itemstodisplay: 5,
autoscroll: false,
circular: false,
masked: true,
orientation: 'h'
}, options);
return this.each(function() {
var oclass = 'horizontal';
if (settings.orientation == 'v')
oclass = 'vertical';
var slidercontents = $(this).addClass('jscarousal-contents-' + oclass + '');
var slider = $('<div/>').addClass('jscarousal-' + oclass + '').attr('id', slidercontents.attr('id'));
var backbutton = $('<div/>').addClass('jscarousal-' + oclass + '-back');
var forwardbutton = $('<div/>').addClass('jscarousal-' + oclass + '-forward');
slidercontents.removeAttr('id');
slidercontents.before(slider);
slider.append(backbutton);
slider.append(slidercontents);
slider.append(forwardbutton);
var total = $('> div', slidercontents).css('display', 'none').length;
var index = 0;
var start = 0;
var current = $('<div/>');
var noOfBlocks;
var interval;
var display = settings.itemstodisplay;
var speed = settings.scrollspeed;
var top;
var left;
var height;
var containerHeight;
var containerWidth;
var direction = "forward";
var scrolling = true;
function initialize() {
index = -1;
noOfBlocks = parseInt(total / display);
if (total % display > 0) noOfBlocks++;
index = noOfBlocks - 1;
var startIndex = 0;
var endIndex = display;
var copy = false;
var allElements = $('> div', slidercontents);
$('> div', slidercontents).remove();
if (settings.masked)
allElements.addClass('thumbnail-inactive').hover(function() { $(this).removeClass('thumbnail-inactive').addClass('thumbnail-active'); }, function() { $(this).removeClass('thumbnail-active').addClass('thumbnail-inactive'); })
for (var i = 0; i < noOfBlocks; i++) {
if (total > display) {
startIndex = i * display;
endIndex = startIndex + display;
if (endIndex > total) {
startIndex -= (endIndex - total);
endIndex = startIndex + display;
copy = true;
}
}
else {
startIndex = 0;
endIndex = total;
}
var wrapper = $('<div/>')
allElements.slice(startIndex, endIndex).each(function(index, el) {
if (!copy)
wrapper.append(el);
else wrapper.append($(el).clone(true));
});
slidercontents.append(wrapper);
}
if (settings.onthumbnailclick != null)
$('> div > div', slidercontents).css('cursor', 'pointer');
$('> div', slidercontents).addClass('hidden');
$('> div > div', slidercontents).css('display', '');
/*vertical*/
if (settings.orientation == 'v') {
top = $('> div:eq(' + index + ')', slidercontents).css('top');
if (top == 'auto') top = "0px";
containerHeight = slidercontents.height();
height = slidercontents.get(0).offsetHeight;
$('> div', slidercontents).css('top', '-' + containerHeight + 'px');
$('> div:eq(' + index + ')', slidercontents).stop(false, true).animate({ 'top': top }, speed, function() { scrolling = false; });
}
/*horizontal*/
if (settings.orientation == 'h') {
left = $('> div:eq(' + index + ')', slidercontents).css('left');
containerWidth = slidercontents.width();
height = slidercontents.get(0).offsetHeight;
$('> div', slidercontents).css('left', '-' + containerWidth + 'px');
$('> div:eq(' + index + ')', slidercontents).stop(false, true).animate({ left: 0 }, speed, function() { scrolling = false; });
}
$('> div:eq(' + index + ')', slidercontents).addClass('visible').removeClass('hidden');
slider.mouseenter(function() { if (settings.autoscroll) stopAnimate(); }).mouseleave(function() { if (settings.autoscroll) animate(); });
if (settings.autoscroll)
animate();
forwardbutton.click(function() {
if (!scrolling) {
direction = "forward";
if (settings.circular)
if (index <= 0) index = noOfBlocks;
showThumbs();
}
});
backbutton.click(function() {
if (!scrolling) {
direction = "backward";
if (settings.circular)
if (index >= noOfBlocks - 1) index = -1;
showThumbs();
}
});
}
initialize();
function stopAnimate() {
scrolling = false;
clearTimeout(interval);
slider.children().clearQueue();
slider.children().stop(false, true);
}
function animate() {
clearTimeout(interval);
if (settings.autoscroll)
interval = setTimeout(changeSlide, settings.delay);
}
function changeSlide() {
if (direction == "forward") {
if (index <= 0) index = noOfBlocks;
} else {
if (index >= noOfBlocks - 1) { index = -1; }
}
showThumbs();
interval = setTimeout(changeSlide, settings.delay);
}
function getDimensions(value) {
return value + 'px';
}
function showThumbs() {
scrolling = true;
var current = $('.visible', slidercontents);
var scrollSpeed = speed;
if (direction == "forward") {
index--;
if (index >= 0) {
if (settings.orientation == 'v') {
$('>div:eq(' + index + ')', slidercontents).css('top', getDimensions(containerHeight)).removeClass('hidden').addClass('visible').stop(false, true).animate({ 'top': top }, scrollSpeed, function() { scrolling = false; });
current.stop(false, true).animate({ 'top': '-=' + getDimensions(containerHeight) }, scrollSpeed, function() {
$(this).removeClass('visible').addClass('hidden');
$(this).css('top', top);
scrolling = false;
});
}
else {
$('>div:eq(' + index + ')', slidercontents).css('left', getDimensions(containerWidth)).removeClass('hidden').addClass('visible').stop(false, true).animate({ 'left': '-=' + getDimensions(containerWidth) }, scrollSpeed, function() { scrolling = false; });
current.stop(false, true).animate({ 'left': '-=' + getDimensions(containerWidth) }, scrollSpeed, function() {
$(this).removeClass('visible').addClass('hidden');
$(this).css('left', left);
scrolling = false;
});
}
} else index = 0;
}
else if (direction == "backward") {
index++;
if (index < noOfBlocks) {
if (settings.orientation == 'v') {
$('>div:eq(' + index + ')', slidercontents).removeClass('hidden').addClass('visible').css({
'top': getDimensions(-containerHeight)
}).stop(false, true).animate({ 'top': top }, scrollSpeed, function() { scrolling = false; });
current.stop(false, true).animate({ 'top': '+=' + getDimensions(containerHeight) }, scrollSpeed,
function() {
$(this).removeClass('visible').addClass('hidden');
$(this).css('top', getDimensions(-containerHeight));
scrolling = false;
});
}
else {
$('>div:eq(' + index + ')', slidercontents).removeClass('hidden').addClass('visible').css({
'left': getDimensions(-containerWidth)
}).stop(false, true).animate({ 'left': '+=' + getDimensions(containerWidth) }, scrollSpeed, function() { scrolling = false; });
current.stop(false, true).animate({ 'left': '+=' + getDimensions(containerWidth) }, scrollSpeed,
function() {
$(this).removeClass('visible').addClass('hidden');
$(this).css('left', getDimensions(-containerWidth));
scrolling = false;
});
}
} else index = noOfBlocks - 1;
}
}
});
}
});
})(jQuery);
这是我的jsCarousel-2.0.0.css:
.jscarousal水平
{
宽度:450px;
身高:118px;
保证金:0;
填充:0;
position: relative; /*overflow: hidden;*/
}
.jscarousal-horizontal-back, .jscarousal-horizontal-forward
{
float: left;
width: 23px;
height: 98px;
color: White;
position: relative;
top: 6px;
cursor: pointer;
}
.jscarousal-horizontal-back
{
background-image: url(../images/left_arrow.jpg);
background-repeat: no-repeat;
background-position: left;
}
.jscarousal-horizontal-forward
{
background-image: url(../images/right_arrow.jpg);
background-repeat: no-repeat;
background-position: right;
}
.jscarousal-contents-horizontal
{
float: left;
height: 95px;
overflow: hidden;
position: relative;
width: 403px;
margin-top:10px;
}
.jscarousal-contents-horizontal > div
{
position: absolute;
width: 100%;
height: 124px;
}
.jscarousal-contents-horizontal > div > div
{
float: left;
margin-left: 7px;
margin-right: 7px;
}
.jscarousal-contents-horizontal img
{
width: 120px;
height: 94px;
border: solid 1px #7A7677;
}
.jscarousal-vertical
{
width: 140px;
height: 460px;
margin: 0;
padding: 0;
position: relative;
overflow: hidden;
}
.jscarousal-vertical-back, .jscarousal-vertical-forward
{
width: 100%;
height: 30px;
background-color: #121212;
color: White;
position: relative;
cursor: pointer;
z-index:100;
}
.jscarousal垂直回 { background-image:url(top_arrow.jpg); background-repeat:no-repeat; 背景位置:底部; } .jscarousal垂直进 { background-image:url(bottom_arrow.jpg); background-repeat:no-repeat; 背景位置:顶部; } .jscarousal - 内容 - 垂直 { 溢出:隐藏; 宽度:140px; 身高:410px; } .jscarousal-contents-vertical&gt; DIV { 位置:绝对; 上:40px; 宽度:100%; 身高:820px; 溢出:隐藏; } .jscarousal-contents-vertical&gt; div> DIV { 宽度:130px; 身高:125px; 保证金:8px; margin-left:14px; } .jscarousal-contents-vertical&gt; div> div span { 显示:块; 宽度:70%; text-align:center; } .jscarousal-contents-vertical img { 宽度:80px; 身高:80px; border:solid 1px#7A7677; }
.hidden
{
display: none;
}
.visible
{
display: block;
}
.thumbnail-active
{
filter: alpha(opacity=100);
opacity: 1.0;
cursor: pointer;
}
.thumbnail-inactive
{
filter: alpha(opacity=20);
opacity: 0.2;
cursor: pointer;
}
当我在单个页面上使用此滑块时它运行良好且图像正在滑动但是当我使用AJAX进行响应时,滑块停止工作。由于某些原因我必须使用此滑块但不能似乎找不到错误。