라이트박스2 제이쿼리 관련 질문
관련링크
본문
라이트박스2를 그누보드5.3에 설치하고
https://lokeshdhakar.com/projects/lightbox2/
아래 코드를 게시판 스킨/view.skin.php 에 추가했습니다.
그림을 클릭하면 확대는 되는데요;;
글의 마지막에 있는 텍스트 링크도
라이트박스2가 그림으로 인식하고 하얀색 빈 창을 띄우네요.
이 코드 때문인거 같은데
$('#bo_v_con a').attr('data-lightbox', 'red2gallery');
<a href=""><img src=""></a> 와 <a href="">텍스트</a>
를 구별하게 하려면 어떻게 하나요?
/* Lightbox2 */
var imageCount = $('#bo_v_con img').length -1;
for (var i = 0; i <= imageCount; i++) {
var srcTotal = $('#bo_v_con img').eq(i).attr('src');
$('#bo_v_con img').eq(i).wrap('<a href="' + srcTotal + '" />');
}
$('#bo_v_con a').attr('data-lightbox', 'red2gallery');
답변 3
bo_v_con 안에 <img /> 들은 <a /> 로 묶어지고
bo_v_con 안에 <a /> 는 모두 라이트박스 적용이 되는것 같습니다.
<a href="' + srcTotal + '" /> 부분을 span 등을 이용하여 onclick 으로 변경하고
$('#bo_v_con a').attr('data-lightbox', 'red2gallery'); 부분의 a를
변경하신 것으로 처리하거나
반대로 라이트박스가 적용되지 않아야하는 부분의 링크를 <a /> 가 아닌
onclick 으로 처리하시면 될것 같습니다~
has 필터 선택자로 해결했습니다.
$("#bo_v_con a:has('img')").attr('data-lightbox', 'red2gallery');