포럼
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
jquery 질문 하나만요..
2011.03.16 18:18
꼭 필요한 기능이 있어서 리사이즈 애드온 바꿔보려 하는데, 지식이 없어서 도움을 좀 청해볼게요.
아래는 카르마님 라이트박스 애드온을 보면,
.xe_content 에서 이미지를 찾아 링크를 감싸는 방식인데요(제가 올린 prettyphoto애드온도 여기서 가져왔어요),
여기서 특정 영역을 찾지 않고 링크를 생성하려면 어떻게 해야 하나요?
아래는 카르마님 라이트박스 애드온을 보면,
.xe_content 에서 이미지를 찾아 링크를 감싸는 방식인데요(제가 올린 prettyphoto애드온도 여기서 가져왔어요),
여기서 특정 영역을 찾지 않고 링크를 생성하려면 어떻게 해야 하나요?
$('div.xe_content').find('img').each(function() {
var t = $(this);
var img = t.attr('src');
var title =t.attr('title');
t.wrap('<a href="'+img+'" rel="라이트박스" title="'+title+'"></a>');
});
이 코드는 xe_content 내에 있는 img 태그를 다 찾아서 <a> 만들어 주는 방식이잖아요.
여기에다가 예외를 설정하려고 해요.
예를 들면,
1. img를 포함하는 영역이(div, span...) 특정한 class가 있는 영역(예를 들면<div class="no-resize">... </div>) 인 경우에는 리사이즈 되지 않는 다거나,
2. 또는 직접 img 태그에 <img class="no-resize" /> 인 경우,
3. 또는 이미지 사이즈가 200px 이하인 경우 등
..을 찾아서 그 부분은 <a>를 생성하지 않데 하는 건데..
검색해도 length 등등 이용해보라고 하는데 삽질을 열심히 해도 모르겠네요 ㅠ.ㅠ
제가 당장 필요한 기능이 1번 인데 고수님들의 도움을 좀 받고자 합니다 ㅠ.ㅠ
---------------
혹시 몰라 다시 한 번 예를 들게요. 아래와 같이 작동하게 끔 하려구요..
이 코드는 xe_content 내에 있는 img 태그를 다 찾아서 <a> 만들어 주는 방식이잖아요.
여기에다가 예외를 설정하려고 해요.
예를 들면,
1. img를 포함하는 영역이(div, span...) 특정한 class가 있는 영역(예를 들면<div class="no-resize">... </div>) 인 경우에는 리사이즈 되지 않는 다거나,
2. 또는 직접 img 태그에 <img class="no-resize" /> 인 경우,
3. 또는 이미지 사이즈가 200px 이하인 경우 등
..을 찾아서 그 부분은 <a>를 생성하지 않데 하는 건데..
검색해도 length 등등 이용해보라고 하는데 삽질을 열심히 해도 모르겠네요 ㅠ.ㅠ
제가 당장 필요한 기능이 1번 인데 고수님들의 도움을 좀 받고자 합니다 ㅠ.ㅠ
---------------
혹시 몰라 다시 한 번 예를 들게요. 아래와 같이 작동하게 끔 하려구요..
<div class="xe_content">
<img /> -> <a>링크 만들어짐
<img class="no-resize" /> -> <a>링크 만들어지지 않음
<div>
<img /> -> <a>링크 만들어짐
</div>
<div class="no-resize">
<img /> -> <a>링크 만들어지지 않음
</div>
</div>
<img /> -> <a>링크 만들어짐
<img class="no-resize" /> -> <a>링크 만들어지지 않음
<div>
<img /> -> <a>링크 만들어짐
</div>
<div class="no-resize">
<img /> -> <a>링크 만들어지지 않음
</div>
</div>
댓글 7
-
ForHanbi
2011.03.16 18:30
-
misol
2011.03.16 18:32
t에 항목이 들어있으니 t.attr('class')로 비교하면 되지 않을까요?
그리고 div는 부모 항목을 확인하면 될것 같아요 -
ForHanbi
2011.03.16 18:33
감싸고 있는 div를 기준으로 할려면
!t.parent('div').hasClass('no-resize') 가 될거같고... -
misol
2011.03.16 18:33
한비님이 먼저 다셨네요;ㅋ.. 저는 지금 폰이라 대강의 내용이고 한비님 답이 맞을것 같아요~!ㅋ -
ForHanbi
2011.03.16 18:39
저도 js는 젬병이라... -
카르마
2011.03.16 19:34
prettyphoto애드온..
이것도 lytebox처럼 lightbox의 변형같은데 기능도 다양하고 예쁘네요. -
hika1
2011.03.16 21:56
감사합니다 ㅠ.ㅠ 올리자 마자 봐주셨네요.
forhanbi 님이 html,css만 잘 하시는 줄 알았더니 jquery 도 잘 하시네요. ^^
misol님, 카르마님도 감사드립니다~
이렇게 간단한 걸 length 같은 거 찾아가면서 끙끙댔다니;;
이러면 될려나??