1

나는 새로운 앱을 만들고있다. 나는 보통 이런 식으로 JQuery를 사용하지만, Coffeescript와 비교하고 올바른 방법을 선택하고 싶다. 또한 coffeescript를 사용하여 JQuery를 올바르게 호출하는 방법을 이해하고 있는지 확인하고 싶습니다.JQuery를 사용하여이 대화 상자를 닫으려면 어떻게해야합니까? Coffeescript 사용?

대화 상자에는 다음과 같은 사업부에 있습니다

<div class="alert-message error"> 
    <a class="close" href="#">X</a> 
    <p>Here is some error text</p> 
</div> 

유행에 따라 디자인하는 대화 상자의 오른쪽 여백에에 'X'를 넣습니다. 사용자가 'X'를 클릭하면 전체 div가 사라져야합니다.

대화 상자를 닫기 위해 사용하는 JQuery 코드 또는 Coffescript 코드는 무엇입니까? 이 대화 상자는 사이트의 모든 페이지에 나타날 수 있습니다.

답변

4

이 시도 :

여기
$('.close').click(function(){ 
    $(this).parent().hide(); //finds parent element of clicked .close and hides it 
}); 
+0

감사를 사용하고 있습니다! 확실히 작동합니다. 나는 동등한 코피 스크립트 (coffesscript)를 원했던 것이다 - 누구? –

+0

@Kevin CoffeeScript-ize로해야 할 일은'function'을'-'로 대체하고'{'중괄호'}'를 버립니다. CoffeeScript의 # 1 규칙은 "It 's Just JavaScript"입니다. :) –

+0

@ Trevor Thanks. 나는 실제로 그것을했고 그것을 해결했다. 이것은 간단한 예였습니다. 저는 주로 coffeescript 접근법의 다른 예를보기를 바랬습니다. [btw - 내 트위터를 통해 저에게 연락 할 수 있습니까?] –

2

하는 samura 코드가 커피 스크립트

$('.close').click() -> 
    $(this).parent().hide() 

// or on 1 line 
$('.close').click() -> $(this).parent().hide() 

// fat arrow version, not 100% sure on this, typing from ipad 
$('.close').click(e) => $(e.target).parent().hide() 

http://jashkenas.github.com/coffee-script/

+0

줄 맨 앞에 'jQuery ->'을 추가 한 후에 만이 작업을 할 수있었습니다. jQuery -> $ (". close"). 클릭 -> $ (this) .parent(). hide() –

+0

@Kevin 그러면 JS 버전과 똑같이 적용됩니다. 특이한 일을하지 않는다면'$ == jQuery'를 사용하면''jQuery ->'(또는 이와 유사하게'$ ->')를 사용하면 DOM이 끝난 후에 코드가 실행되도록 할 수 있습니다. '$ ('. close')'선택을하면 페이지의 HTML에있는'.close' 엘리먼트가 존재하게됩니다. –

관련 문제