函數plusSlides在我的html中通過onclick調用。 This顯示了我正在使用的類似函數和html。類mySlides
持有將在showSlides
中顯示的每個n==x
的文本。與鏈接中的幻燈片示例不同,當我嘗試點擊onclick="plusSlides(-1)"
時,我的功能不起作用。例如,當我在plusSlides(-1)
上點擊三次時,aerialMap
和fedTiless
都被添加,但roadMap
不是。有人會知道爲什麼嗎?JavaScript幻燈片功能問題
function roadMap() {
map.addLayer(Road);
map.removeLayer(febTiles);
}
function febTiless() {
map.addLayer(febTiles);
map.removeLayer(Road);
}
function aerialMap() {
map.addLayer(Aerial);
map.removeLayer(febTiles);
map.removeLayer(Road);
}
var slideIndex = 1;
showSlides(slideIndex);
function plusSlides(n) {
showSlides(slideIndex += n);
}
function currentSlide(n) {
showSlides(slideIndex = n);
}
function showSlides(n) {
var slides = document.getElementsByClassName("mySlides");
if (n > slides.length) {slideIndex = 1}
if (n < 1) {slideIndex = slides.length}
if(n == 1)
aerialMap();
if(n == 2)
febTiless();
if(n == 3)
roadMap();
for (i = 0; i < slides.length; i++) {
slides[i].style.display = "none";
}
slides[slideIndex-1].style.display = "block";
}
嘗試'map.removeLayer(鳥瞰)添加;'向第一兩個函數('roadMap'和'febTiless')。也許沒有這些調用可能導致應該可見的圖層被「Aerial」覆蓋。 – trincot
感謝您的評論,但與plusSlides(1)相比,這並不能解決plusSlides(-1)發生故障的問題。 – sergey