2011-02-26 3 views
2

일부 jQuery 코드에 문제가 있습니다. 어떤 이유로 자동으로 실행되지 않을 때 Firebug로 진행하면 정상적으로 동작할까요?Firebug를 통해 단계별로 실행하지 않는 한 jQuery 코드가 실행되지 않습니다.

자동으로 실행되지 않는 코드에 중단 점을 넣은 다음 Firebug에서 재생을 누릅니다.이 중단 점을 제거하거나 실행되지 않는 방화범이 치면 작동합니다. 누군가 제발 도와 줄 수 있습니다, 나는 인터넷을 검색했지만 관련성이없는 것을 발견하지 못했습니다.

메인 페이지에서 jQuery 탭을 만들고이 탭에 외부 페이지를 열 때 링크를 클릭하면 코드가 실행됩니다 - 외부 페이지에는 라이트 박스를 실행하는 jQuery가 포함되어있어 링크를 클릭하면 라이트 박스 코드가 활성화됩니다 (이 코드는 중단 점없이 실행되지 않습니다).

링크 : 실행

<a onclick="createNewTab('dhtmlgoodies_tabView1','Remote Access','','RemoteAccess.html',true);return false" id="lightbox_load">Remote Access</a> 

코드하지 :

$(function(){     
    // Lighbox Link 
    $('#lightbox_load').click(function(){ 
    $('#RemoteAccessGallery a').lightBox({fixedNavigation:true});  }); }); 

답변

2

나는 당신의 온 클릭하고, JQuery와 .live 추가와 함께 경쟁 조건이 있다고 생각합니다. 익명 함수 내에서 createNewTab ('dhtmlgoodies_tabView1', 'Remote Access', '', ...)을 가져 오는 경우 어떻게됩니까?

+0

라이트 박스 기능을 사용해 보지 않았지만 라이트 박스가 아닌 데이터 테이블을로드하는 다른 페이지에서 시도해 보았습니다. 새 탭에서 데이터 탭이 예상대로로드되지만 탭은 '$ (함수() { \t \t \t \t \t \t \t \t: ?? 그냥 다음과 같이 라이트를 시도 사라\t \t // Lighbox 링크 \t \t \t \t $ ('#의 lightbox_load')을 클릭 (함수() {createNewTab ('dhtmlgoodies_tabView1', '원격 액세스', '', 'RemoteAccess.html')는 true. 반환 false, \t \t \t \t \t $ ('# RemoteAccessGallery a'). lightBox ({fixedNavigation : true}); }); }); \t \t \t \t \t 이전과 완전히 똑같은 것은 중단 점과 작동합니다. notwith without – Toni

+0

비정상적인 동작, 일반적으로 디버거에서 작동하지만 정상적인 타이밍 문제가있는 경우. 어딘가에서 완전한 코드를 볼 수 있습니까? –

+0

당신은 맞았습니다. 그러나 두 개의 코드가 동시에 실행되었지만 외부 페이지가로드되기 전에 라이트 박스가 실행을 마쳤습니다. 라이트 페이지에 setTimeout을 두어 외부 페이지 다음에 실행 중이라는 것을 알았습니다. 저의 주위에 조금만 있으면 대학 과제를 해결할 수 있습니다. 도와 줘서 고맙다. 만일 당신이 경쟁 조건에 관해 말하지 않으면 나는 결코 일어나지 않고 있었던 것을 깨달았을 것이다! 고맙습니다 – Toni

0

시도 :

$(function(){     
    // Lighbox Link 
    $('#lightbox_load').live("click", function(){ 
     $('#RemoteAccessGallery a').lightBox({fixedNavigation:true}); 
    }); 
}); 
+0

실행되는 첫 번째 줄에 중단 점을 넣을 때와 똑같은 일이 발생합니다. firebug 또는 중단 점이 없으면로드되지 않습니다. = ( – Toni

관련 문제