텍스트 영역에 포커스가있을 때만 사용할 수있는 일부 BB 코드 컨트롤을 사용하여 HTML 텍스트 영역을 향상 시키려고합니다. 원하는 동작은 다음과 같습니다jQuery 및 이벤트 버블 링 : 원하지 않는 이벤트 중지
사진 1 - 포커스 이벤트 전 : before focus event http://gaedekenet.de/tmp/beforeInit.jpg
이은 그림 2 - 포커스 이벤트 (올바른 동작) 후 :가 correct behaviour http://gaedekenet.de/tmp/afterInit.jpg
위의 올바른 행동입니다 텍스트 영역의 LOWER 부분을 클릭하면됩니다. 버튼이 나타나지 않습니다. 사용자가 텍스트 영역의 왼쪽 상단 부분에 클릭 할 때마다 그러나, 다음과 같은 상황이 발생합니다
그림 3 - 포커스 이벤트 후 (잘못된 동작) : erroneous behaviour http://gaedekenet.de/tmp/afterInit_error.jpg
그것은 나에게 것뿐만 아니라 "클릭", "마우스 다운", "마우스 업"등
"포커스"이벤트가 트리거됩니다. 어떤 이벤트도 BB 코드 플러그인 (타사 플러그인 임)에 도달 할 수 없습니다. 현재 접근 방식은 다음과 같습니다.
$(#myText)
.focus(function(e){
e.stopPropagation().stopImmediatePropagation();
// initialize and show the bb code buttons here
})
.click(function(e){
e.stopPropagation().stopImmediatePropagation();
})
.mouseup(function(e){
e.stopPropagation().stopImmediatePropagation();
})
.mousedown(function(e){
e.stopPropagation().stopImmediatePropagation();
});
무엇이 누락 되었습니까?
당신이 시도 했 e.preventDefault를 사용 방지하기 위해 전파를 정지()? –