>  기사  >  웹 프론트엔드  >  jQuery는 데이터를 비동기로로드하고 이벤트 example_jquery를 추가합니다

jQuery는 데이터를 비동기로로드하고 이벤트 example_jquery를 추가합니다

WBOY
WBOY원래의
2016-05-16 16:38:521266검색

몇 달 전 프로젝트에서 트리바에 참여했는데, 플러그인을 많이 찾아보다가 좀 번거로워서 직접 작성했는데, 매번 문제가 생기기 시작했습니다. 나는 그것을 계속했다.

당시 프로젝트는 트리 바를 통해 제어되었으며, 관리자는 $(".XX")를 사용하여 데이터베이스의 데이터에 대한 트리 바를 동적으로 생성할 수 있었습니다. .click() 메서드는 불가능합니다.

1. 이전에 jq1.4.3을 사용했는데 jq1.7에서 live() 메서드를 사용하여 이 기능을 구현할 수 있습니다

$(‘#div').live(‘click',function(){
//do stuff
});

그러나 라이브 메소드에는 토글 이벤트와 같은 지원되지 않는 이벤트도 있습니다. 이 상황이 발생하면 클릭 이벤트를 추가한 다음 클릭 트리거 이벤트를 시뮬레이션하면 괜찮습니다.

$('a').live('click',function(){
$(this).toggle(function(){

   alert("q11");
//
   alert($(this).attr("id"));
   $(this).parent().children('ul').show();
},function(){
  $(this).parent().children('ul').hide();
});
$(this).trigger('click');
/**
之前绑定的click事件,只有点击了才会触发toggle事件,所以就给他加上模拟点击事件,不需要点击直接出发
**/
});

2. jq1.7 이상에서는 on 메소드를 사용합니다. 첫 번째 속성은 이벤트, 두 번째는 선택자, 세 번째는 실행 방법입니다

$(document).on("click","#d1",function(){
alert("bbbbb");
});
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.