2010-06-21 2 views
0

jQuery 캡처 라이브러리를 사용하여 사용자가 프로필 사진을 가리키면 간단한 "프로필 사진 편집"링크를 추가합니다. 캡션으로 표시되는 텍스트는 fancybox 모달 창에 표시하려는 링크입니다. 어떤 이유로 인하여 captify는 링크가 fancybox에 바인딩되는 것을 방지하고 항상 페이지를로드하려고하는 기본 링크 이벤트를 수행합니다. 이것은 페이지의 모든 링크에 적용되며 $ ('a')를 추가하여 테스트했습니다. click (function() {return false;}); - captify를 호출 한 후 다른 이벤트 처리기를 설정하려고 할 때 captify가 문제를 일으키는 것 같습니다. 누구든지이 문제를 일으킬 수있는 아이디어가 있습니까? 또는 jquery 버전 (1.4.1)과 호환되지 않을 수 있습니다 ...jQuery가 다른 jquery 코드를 캡쳐 함

div # change_pic이 이미지 위에 겹쳐진 캡션이되는 html 구조체 :

<div id = "avatar"> 
<img src="http://localhost/media/images/silhouette110x110.gif" alt="profile photo" class="captify" rel="change_pic" /> <div id="change_pic"> 
    <a href="http://localhost/image/manage" class="pic_manager">Change your photo</a> </div> 
    </div> 

자바 스크립트는 다음과 같습니다

//jquery 1.4.1 already loaded 
<script type="text/javascript" src="http://localhost/media/js/fancybox/jquery.fancybox-1.3.1.pack.js"></script> 
<script type="text/javascript" src="http://localhost/media/js/fancybox_init.js"></script> 
<link rel="stylesheet" type="text/css" href="http://localhost/media/css/captify.css" /> 
<script type="text/javascript" src="http://localhost/media/js/captify.tiny.js"></script> 
    <script type = "text/javascript"> 
      $(document).ready(function(){ 

      $('img.captify').captify({ 
       // caption span % of the image 
       spanWidth: '90%' 
      }); 

      $("a.pic_manager").fancybox(); 
      }); 
     </script> 
+0

하는 콘솔에서 자바 스크립트 오류가 표시됩니까와 함께? 이것은 귀하의 증상으로 보입니다. –

+0

오류는 없지만 Firefox에서 테스트 한 결과 아무 문제가 없습니다. 문제는 크롬에있는 것 같습니다 ... 이상한 – franko75

+0

NoScript 또는 다른 애드온 아마도? –

답변

1

문제가 제거의 사용과 관련이있을 듯() 대신에 분리의() 이전에 DOM 요소에 연결된 모든 이벤트를 삭제.

나는 captify.js 코드의 그 라인을 수정 (절. 1.1.3)

var captionLabelSrc = $('#' + $(this).attr('rel')); 
var captionLabelHTML = !captionLabelSrc.length ? $(this).attr('alt') : captionLabelSrc.html(); 
captionLabelSrc.remove(); 

var captionLabelSrc = $('#' + $(this).attr('rel')).detach(); 
var captionLabelHTML = !captionLabelSrc.length ? $(this).attr('alt') : captionLabelSrc; 
//captionLabelSrc.remove(); 
관련 문제