저희 회사는 디자인 에이전시에서 제작 한 웹 사이트를 운영하고 있습니다. 그들은 사용자 지정 CMS를 사용하기 때문에 사이트의 원시 코드로 들어가기가 매우 어렵습니다. 저는 이미지 슬라이더로 특정 버그를 잡으려고했습니다. 슬라이더의 네비게이션 버튼을 클릭하면 이미지 슬라이더가있는 버그
는 ("1,2,3,4,5")는, 상기 슬라이드는 적절한 이미지로 전환하지만 처음. 다른 단추를 두 번 클릭하면 슬라이더가 변경되지 않습니다. 이미지 아래의 그림자가 더 어둡게 보입니다. 따라서 이미지가 사라지지 않고 단순히 주 이미지 아래에 스태킹된다는 가정하에 진행됩니다.이 문제를 해결하는 데 도움을 주시면 큰 도움이 될 것입니다.
관련 코드는 :
$('#home_features .listeditem').wrapAll('<div id="fade" />');
$('#fade').css('background', 'transparent');
var featureCt = $('#fade .listeditem').length;
if (featureCt > 1) {
$('#home_features').each(function() {
var controlDiv = $('<div />').attr('id', 'switcher');
for (var i = 1; i <= featureCt; i++) {
var control = $('<a href="#" class="selector" id="s' + i + '">' + i + '</a>');
if (i == 1) control.addClass('selected first');
if (i == featureCt) control.addClass('last');
controlDiv.append(control);
}
$(this).append(controlDiv);
controlDiv.append('<a href="#" class="selector" id="stop">||</a>');
controlDiv.append('<a href="#" class="selector" id="start" style="display: none;">▶</a>');
});
}
$("#fade").innerfade({
speed: 2000,
timeout: 5000,
containerheight: 440,
tracker: "switcher",
trackerclass: "selected",
repeat: 1
});
$(".selector").click(function() {
if (this.id == "stop" || this.id == "start") {
return;
}
if($("#fade").data("timer")) {
clearTimeout($("#fade").data("timer"));
$("#fade").removeData("timer");
$("#stop").hide();
$("#start").show();
}
var id = Number(this.id.substr(1));
$(".selector").removeClass("selected");
$(this).addClass("selected");
$("#fade>div:visible").fadeOut(1);
$("#fade>div.item" + id).fadeIn(1, function() {
$('body').removeMatchedClasses({ pattern: /^slide/ });
$('body').addClass('slide' + (id - 1));
});
var num = $("#fade").data("num_elements");
if (id < num) {
$("#fade").data("next", id);
} else {
$("#fade").data("next", 0);
}
return false;
});
$("#stop").click(function() {
clearTimeout($("#fade").data("timer"));
$("#fade").removeData("timer");
$("#stop").hide();
$("#start").show();
return false;
});
$("#start").click(function() {
$("#start").hide();
$("#stop").show();
$(".selector").removeClass("selected");
$("#fade").innerfade({
speed: 2000,
timeout: 10000,
containerheight: 440,
tracker: "switcher",
trackerclass: "selected"
});
var id = $("#fade").data("next");
$("#s" + id).addClass("selected");
return false;
});
코드가 없으면 "너무 어렵다." 코드의 작은 스 니펫으로 알아낼 수있는 것을 이해하기 위해 방화 광을 사용해야합니다. – DonCallisto
@DonCallisto relavant 코드를 추가했습니다. 실수로 죄송합니다! – user1587724
내 FF가 여기에서 문제를 발견했습니다 : $ ('body'). removeMatchedClasses ({pattern :/^ slide /}); – Steen