일부 요소를 클릭하면 특정 지점으로 내 페이지에 애니메이션을 적용하려고합니다.
이제 버튼을 클릭하여 div의 맨 위로 페이지를 움직일 수있었습니다. 닫기 버튼에 대한 다른 이미지가있는 버튼 클래스를 토글합니다.
새 클래스 .btn_close가있는 버튼을 클릭 할 때 페이지를 애니메이션으로 만들려고하면이 문제가 나타납니다.
asume은 내 코드에서 새로운 클래스를 인식하지 못하는 것처럼 잘못된 것입니다. http://jsfiddle.net/weberjavi/wBkf9/5/
너무 감사 :
토글 된 클래스로 div에 애니메이션을 적용하십시오. jquery
$("#content").hide();
$("[class^=btn]").click(function() {
$(this).toggleClass("btn_open btn_close")
if($(this).hasClass("btn_close")){
$(this).text("close")
}else{
$(this).text("open")
}
$("#content").toggle("slow");
return false;
});
$("#btn").click(function() {
$('body').animate({
scrollTop: $("#btn").offset().top
}, 800);
});
$(".btn_close").click(function() {
$('body').animate({
scrollTop: $("#header").offset().top
}, 800);
});
나는이 바이올린을했습니다!
EDITED! (25/04/2014)
첫 번째 질문에서 코드를 단순화하려고 시도했지만 실제로는 열림과 닫음 사이를 전환하지 않으려 고합니다. if/else 문장과 함께 코드 덩어리를 사용하지 않고) 두 이미지 사이에서.
$("[class^=arrow]").click(function() {
$(this).toggleClass("arrow_down arrow_up");
});
$("#content_section_1").hide();
$("#btn_1").click(function() {
$("#content_section_1").toggle("slow");
return false;
});
$("#content_section_2").hide();
$("#btn_2").click(function() {
$("#content_section_2").toggle("slow");
return false;
});
$("#btn_1").click(function() {
$('html, body').animate({
scrollTop: $("#section_1").offset().top
}, 800);
});
$("#btn_2").click(function() {
$('html, body').animate({
scrollTop: $("#section_2").offset().top
}, 800);
});
내가 숨겨진 콘텐츠를 여러 섹션이 내가 헤더의 상단에 전체 페이지 스크롤 나는 부분을 닫을 때마다 원하는 :
내 코드는 다음과 더 유사 보일 것이다.
다른 피들을 만들었습니다 : http://jsfiddle.net/weberjavi/ACH5L/ (어떤 방식 으로든 나는 바이올린에 버튼을 표시하는 방법을 모르겠습니다).
클래스 전환 정보를 저장하는 변수를 작성해야하지만 JS 세계에서 새로운 기능이므로이 지점에 도달하는 방법을 모릅니다.
P.S : G.Mendes는 도움을 많이 주셔서 감사 드리며 오해를해서 죄송합니다.
. 어쨌든 고마워. –
@JaviAbia 죄송합니다. 아직 명확하지 않습니다. 섹션을 닫을 때 페이지 상단으로 스크롤하는 것이 문제입니까? –
예 @G.Mendes 그것이 핵심입니다.섹션을 닫을 때마다 페이지 상단으로 스크롤하고 싶습니다. 그러면 섹션을 닫을 때마다 전체 페이지를 볼 수 있습니다. –