토글 가능한 배경을 가진 내 사이트의 특정 영역을 가지고 있지만 약간 이상하게 보입니다. 내 코드는 다른 오브젝트를 페이드 아웃 할 때 작동하지만이 경우에는 내 이미지에서 작동하지 않습니다. 내가 원하는 것 : 사용자가 내 버튼을 클릭 할 때마다 기능이 활성화됩니다. '버튼'텍스트가 '앱'인 경우 배경이 희미 해지고 게임이 페이드 인하려면 '게임'이라고 입력합니다. 동시에 텍스트의 색상 클래스도 fontcolor2
에서 fontcolor1
으로 변경하고 다른 하나는 길 주변에. 문제; 코드를 실행하면 첫 번째 클릭에서 작동합니다. 그 후 배경이 보통처럼 흐려지고 텍스트가 바뀝니다. 그러나 변경된 버튼을 클릭하면 이미지의 색이 바뀌지 않고 텍스트의 색이 바뀝니다.jQuery 페이드 인/아웃 이미지 배경 글리치
글리치가있는 이미지는 gamesBG
이고 시간은 bgFadeDuration
입니다.
내 코드는 다음과 같습니다.
$('#togglega').click(function(){
var bgFadeDuration = 300;
if ($('#togglega:contains(Apps)')) {
$('#nothingyet').css('display', 'none');
jQuery('#gamesBG').fadeOut(bgFadeDuration);
$("#togglega").toggleClass('fontcolor2 fontcolor1');
$("#sqtitle").toggleClass('fontcolor2 fontcolor1');
$("#sl1ndp").toggleClass('fontcolor2 fontcolor1');
$("#swtitle").toggleClass('fontcolor2 fontcolor1');
$("#squl").toggleClass('fontcolor2 fontcolor1');
} else if ($('#togglega:contains(Games)')){
$('#nothingyet').css('display', 'block');
jQuery('#gamesBG').fadeIn(bgFadeDuration);
$("#togglega").toggleClass('fontcolor1 fontcolor2');
$("#sqtitle").toggleClass('fontcolor1 fontcolor2');
$("#sl1ndp").toggleClass('fontcolor1 fontcolor2');
$("#swtitle").toggleClass('fontcolor1 fontcolor2');
$("#squl").toggleClass('fontcolor1 fontcolor2');
jQuery('#bttimg1').css('opacity', '0');
jQuery('#bttimg2').css('opacity', '0.7');
jQuery('.gdb').css('color', '#212121');
} else {
}
});
어디에서 문제가 발생하며 코드가 작동하지 않습니다.
UPDATE 나는 자바 스크립트 기능을 사용하여 Games
에 Apps
에서 텍스트를 변경합니다. 함수는 다음과 같습니다. FIDDLE -
자바 스크립트
function togglegaclick(){
this.GamesChange = function(){
togglebutton.innerHTML = 'Games';
document.getElementById('towlabel').style.left = "60px";
categorylabel.innerHTML = 'Apps';
categorylabel.style.top = "17px";
categorylabel.style.left = "100px";
}
this.AppsChange = function(){
togglebutton.innerHTML = 'Apps';
document.getElementById('towlabel').style.left = "45px";
categorylabel.innerHTML = 'Games';
categorylabel.style.top = "20px";
categorylabel.style.left = "80px";
}
this.TitleFadeOut = function(){
fadeEffect.init('toqlabel', 1, 0);
fadeEffect.init('sqtitle', 1, 0);
}
this.TitleFadeIn = function(){
fadeEffect.init('toqlabel', 1, 100);
fadeEffect.init('sqtitle', 1, 100);
}
var togglebutton = document.getElementById('toqlabel');
var categorylabel = document.getElementById('sqtitle');
var gamesbox = document.getElementById('gamesbox');
if (togglebutton.innerHTML == 'Apps'){
GamesChange();
}else{
AppsChange();
}
}
. 나는 "버튼"에 대해 혼란스러워합니다. 텍스트가 앱에서 게임으로 어떻게 바뀌나요? 또는 두 개의 버튼이 있습니까? – TimSPQR
@TimSPQR Javascript 기능을 사용하여 버튼과 표시된 텍스트에서 텍스트를 'Apps'에서 'Games'로 변경합니다. 내 질문에 내 자바 기능을 게시 할 것이다. – Lae
좋아, 모든 순수 JS에 ... 여전히 그것에 노력하고 ... 사소한 오타 - towlabel toqlabel 변경. 아마 원인은 ... 여기에 내가 일하고있는 피들이가있다. http://jsfiddle.net/pBE2S/ – TimSPQR