0
因此,我正在構建一個需要包含多個傳送帶的網頁。我已經成功創造了第一個旋轉木馬,但一直未能破解創造任何其他的東西。在單個頁面上實現多個傳送帶
我一直在關注Christian Heilmann的Javascript輪播指南,一切都很順利,直到我試圖在同一頁面上放置2個輪播。
由於js正在影響類,我認爲現有的js會影響副本。這裏的工作輪播looks和這裏是如何破碎輪播looks。
任何有關如何去做這件事的最佳途徑的建議都會很棒,如果可能的話,我很樂意保留在香草js中。謝謝你的幫助!
而這裏的更新JS:
carousel = function(id) {
var box = document.querySelector(id + ' .project-pictures');
var next = box.querySelector(id + ' .next');
var prev = box.querySelector(id + ' .prev');
var items = box.querySelectorAll(id + ' .content li');
var counter = 0;
var amount = items.length;
var current = items[0];
box.classList.add('active');
function navigate(direction) {
current.classList.remove('current');
counter = counter + direction;
if (direction === -1 &&
counter < 0) {
counter = amount - 1;
}
if (direction === 1 &&
!items[counter]) {
counter = 0;
}
current = items[counter];
current.classList.add('current');
}
next.addEventListener('click', function(ev) {
navigate(1);
});
prev.addEventListener('click', function(ev) {
navigate(-1);
});
navigate(0);
}();
carouselA = carousel('#carousel-a');
carouselB = carousel('#carousel-b');
注:受影響的DIV是的.project畫面。
感謝您的回覆!我仍然沒有得到傳送帶工作 - 它在上面的不工作的屏幕截圖中看起來是相同的,我覺得我錯過了一些非常基本的東西,這裏是html的參考,我已經更新了上面的js以反映你的建議:
<div id="carousel-a">
<div class="project-pictures">
<ol class="content">
<li><img src="images/portfolio_img/design_museum/cropped/1.png">
</li>
</ol>
<div class="buttons">
<button class="prev">
</button>
<button class="next">
<span class="offscreen">Next</span> ▶
</button>
</div>
</div></div>
感謝您的建議 - 唉我仍然有問題 - 我已經更新了上面的問題,如果你有時間再看一遍。 – user3649848
我注意到,在定義它之後,你仍然在執行傳送帶功能,這是()之後的()。 –
啊完美 - 非常感謝您的幫助! – user3649848