구현도 매우 간단하지만 클릭 표시 이벤트에서는 이벤트가 버블링되는 것을 방지해야 합니다. 그렇지 않으면 페이지의 클릭 이벤트가 트리거됩니다. 하지만 여기에도 단점이 있습니다. 즉, 동일한 페이지에 버블링을 방지하는 이벤트가 있는 경우 DIV를 숨길 수 없으므로 이러한 이벤트에는 특별한 처리가 필요합니다. 즉, 숨겨진 DIV를 직접 호출해야 합니다(그러나 일반적으로 이러한 이벤트는 많지 않음);
JS:
$(document ).ready(function() {
//언어 헤더 클릭 이벤트, 언어 목록 표시
$(".언어_selected").click(function(e) {
$ (".언어_목록" ).toggle();
e.stopPropagation(); //이벤트 버블링을 방지합니다. 그렇지 않으면 이벤트가 다음 문서 클릭 이벤트로 버블링됩니다.
//숨기기 문서를 클릭할 때 언어
$(document).click(function() {
$(".언어_list").hide();
})//클릭할 때 언어 목록의 언어 항목, 선택한 항목을 업데이트하고 언어 목록을 숨깁니다
$(".언어_list li").click(function() {
$(".언어_selected").text($(this ).text());
$(".언어 목록").hide();
})
$("#noPopEvent").click(function(e) {
e .stopPropagation();
});
});
CSS:
{
커서: 포인터
}
.언어_목록
{
경계: 1px 단색 검정색
디스플레이: 없음
}
.언어_목록 li
{
커서: 포인터
경계: 1px 빨간색
HTML:
코드 복사
中文(简体) )
🎜>
저를 클릭하세요. 언어 목록을 숨기지 마세요. , DIV를 직접 표시해야 합니다