2009-11-03 5 views
0

ID가 'close'인 이미지를 클릭하면 요소를 숨기려고합니다.Jquery가 자식을 클릭 할 때 요소를 숨기려고 시도합니다.

내가 말할 수있는 것부터 모두 필요한 것은되어야하지만 클릭 할 때 아무 것도 일어나지 않아야합니다.

$(document).keyup(function(event) { 
    if (event.keyCode ==27) { 
     $('#ordercell').hide('slide'); 
    } 
}); 

탈출을 누를 때 숨기기가 잘되어있어서 무엇이 실종되었는지 잘 모르겠습니다.

내 HTML은 (내가 생각하기 때문에 내가 하나를 만든 전에 작업 스크립트를 얻을 이미지 ATM을 것 사용하지 않음)된다

<div id="ordercell"> 
    <div id="orderform"> 
     <div class="cardorder" id="cardorder56"> 
     <div id="close">X</div> 
     <img src="foo.jpg"> 
     </div> 
    </div> 
</div> 

이 모두 하드 코딩, 더 AJAX를.

+0

당신의 HTML은 어떻게 생겼습니까? –

+0

id가 #close 인 이미지가 여러 개 있습니까? – karim79

+0

닫기 ID가있는 단일 요소가 있습니다. 여러 이미지를 처리 ​​할 수 ​​있도록이 작업을 수행하면 클래스로 변경됩니다. –

답변

1

클릭 기능을 설정할 때 id="close"의 이미지가 이미 DOM에 있습니까?

btw. WFM. 여기를 확인하십시오. http://jsbin.com/acose

+0

나는 문제가 무엇인지 짐작한다. 나는 $ (document) .ready() 블록에 있어야한다는 것을 알지 못했다. 가까이에 이스케이프 코드를 만들 필요가 없었습니다. 고마워, 지금 일하고있어. –

0

클릭 이벤트에 바인딩 할 때 DOM에 이 있습니까? ajax 또는 다른 방법을 사용하여 DOM을 수정하는 경우 코드의 해당 시점에 클릭 이벤트를 설정하거나 live을 사용해야합니다.

$("#close").live("click", function() { do stuff }); 

또한 click 이벤트에서 false를 반환하거나 preventDefault를 호출해야합니다.

관련 문제