:
$("#open").click(function() {
$('.open-this').slideToggle("slow");
});
이
시도
체크 아웃 업데이트 된 바이올린 http://jsfiddle.net/bfkLM/15/
코드의 문제는 링크가 코드에서 생성하고 이벤트 핸들러가 IT에 click
이벤트를 첨부려고 할 때 DOM에 표시되지 않는 것입니다 .
그래서 해결책은 위임 된 이벤트 : 공식에서; jquery 웹 사이트
위임 된 이벤트는 나중에 문서에 추가 된 하위 요소 인 의 이벤트를 처리 할 수 있다는 이점이 있습니다. 위임 된 이벤트 처리기가 연결될 때 제공되는 요소를 선택하면 위임 된 이벤트를 에 자주 사용하여 이벤트 처리기를 자주 연결하거나 제거하지 않아도됩니다. 이 요소는 이벤트 핸들러가 문서의 모든 버블 링 이벤트를 모니터하려는 경우 모델보기 컨트롤러 디자인 (예 : 문서) 또는 문서의보기 컨테이너 요소 일 수 있습니다. 문서 요소는 다른 HTML을로드하기 전에 전에 문서 머리 부분에서 사용할 수 있으므로 문서 준비를 기다리지 않고도 이벤트를 첨부해도 안전합니다.그것은 클릭 이벤트 내에서 타겟 요소 (open
)에서오고있다 body
태그와 검사에 대한 이벤트 처리기를 부착하기 때문에이 내 코드와를 불 것이다 일어날 때 나의 새로운 코드가 작동 이유
팝업이 표시됩니다
한 가지 더, e.preventDefault();
의 사용은 페이지가 앵커의 href
속성으로 이동하지 못하게하는 것입니다.
..... 정말로 혼란 스럽네요 ..... –
아래의 업데이트 된 답변을 확인하십시오. –