我想創建一個頁面,用戶可以通過單擊按鈕將jQuery滑塊庫添加到頁面上。在一個頁面上動態創建多個jquery滑塊庫
我已經接近它的工作,但在有多個附加滑塊時圖像旋轉出現問題。和原始的sl j跳躍,只顯示兩個圖像。
我創建了一個的jsfiddle證明http://jsfiddle.net/UUKP4/25/
附加滑塊僅環輪一次,然後停止
任何幫助,不勝感激。
#slideshow {
position:relative;
height:350px;
}
#slideshow IMG {
position:absolute;
top:0;
left:0;
z-index:8;
opacity:0.0;
}
#slideshow IMG.active {
z-index:10;
opacity:1.0;
}
#slideshow IMG.last-active {
z-index:9;
}
的JScript
var i;
var topplus=50;
function buildslider(i, id, content) {
id = id + i;
var newdiv = document.createElement('div');
newdiv.setAttribute('id', id);
newdiv.style.position = "absolute";
newdiv.style.top = +topplus + "px";
newdiv.style.left = +topplus + "px";
newdiv.style.display = 'inline-block';
newdiv.style.width = '320px';
newdiv.style.height = '270px';
newdiv.innerHTML = content;
document.getElementById("content").appendChild(newdiv);
topplus=topplus+150;
function slideSwitch() {
var $active = $('#' + id + ' #slide_image.active');
if ($active.length === 0) $active = $('#' + id + ' #slide_image:last');
var $next = $active.next().length ? $active.next() : $('#' + id + ' #slide_image:first');
$active.addClass('last-active');
$next.css({
opacity: 0.0
})
.addClass('active')
.animate({
opacity: 1.0
}, 1000, function() {
$active.removeClass('active last-active');
});
}
$(function() {
setInterval(slideSwitch, 3000);
});
i++;
}
function addSlider() {
buildslider('i', 'draggable', '<div id="slideshow"><img id="slide_image" src="http://jonraasch.com/img/slideshow/mini-golf-ball.jpg" class="active" /><img id="slide_image" src="http://jonraasch.com/img/slideshow/jon-raasch.jpg" /><img id="slide_image" src="http://jonraasch.com/img/slideshow/ear-cleaning.jpg" /></div>');
}
HTML
<input type='button' value='add slider' id='addSlider' onclick='addSlider();'>
您應該基於某個類來創建一切樣式,而不是給它們ID。多個ID無效 –
@Zeaklous對不起,我不太明白你的意思,id是周圍div的id而不是圖像,圖像沒有給出多個id。你可以給我一個例子嗎? –
@Zeaklous我試圖改變的一類,但現在滑塊不起作用http://jsfiddle.net/UUKP4/30/ –