2016-08-17 3 views
0

JSF 및 스프링 부트로 작업합니다. 나타나는 xhtml 파일에 jquery 스크립트가 있습니다.이 스크립트는 표시되는 구성 요소에 동적으로 클릭 메서드를 추가합니다. 모든 것이 작동하지만 링크를 복사하고이 링크가있는 새 탭을 열 때입니다. 새 탭에서 JQuery 스크립트가 실행됩니다. 클릭 할 때 작동하지 않습니다. 내가 틀린 게 뭐야?JQuery가 새 탭에서 작동하지 않습니다.

<script> 
       $('#menu\\:notification, #menu\\:notificationGrowlMessageError_container') 
       .on('click', showUserTaskListIfNotificationForUser); 
    </script> 

답변

1

이 같은 $(document).ready();로 포장해야 '#menu \\ : 알림, #menu \\ : notificationGrowlMessageError_container'동적으로 추가되는

<script> 
    $(document).ready(function() { 
     $('#menu\\:notification, #menu\\:notificationGrowlMessageError_container') 
       .on('click', showUserTaskListIfNotificationForUser); 
    }); 
</script> 
+0

그것이 ID가 작업 할 때 수 있습니까? 문서가 준비되면 –

+0

이제 작동합니다. 왜 그런가요? 왜 첫 페이지에서 작동하지만 새 탭에서 작동하지 않습니까? 왜 나는 준비가 필요한가요? 설명 후 귀하의 답변을 수락합니다. –

+0

스크립트가 실행될 때 첫 페이지가 이미 DOM에 있었지만 두 번째 페이지는 그렇지 않았기 때문입니다. 따라서 DOM이 완전히로드되었는지 확인한 다음, 모든 HTML 요소를 볼 수있는 Javascript를 실행하는'ready()'를 사용해야한다. 감사합니다. –

관련 문제