I 구현 한 부분은많은 재귀에 대해이 코드는 무엇을합니까? 이 스크립트의
var ZFDebugLoad = window.onload;
window.onload = function(){
if (ZFDebugLoad) {
ZFDebugLoad();
}
ZFDebugCollapsed();
};
방화범이 나에게 오류가 나에게 코드는 I 있도록 무한 루프처럼 보이는
"오류가 너무 많이 재귀에 휴식"을 제공 디버깅을 도와합니다 원래 저자가 왜 넣었는지 궁금해. 또한 ZFDebugLoad는 값을 가질 수 없으므로 함수에서 반환 값이 없어 ...
EDIT이 오류의 실제 원인은 다음과 같습니다. 동일한 튜토리얼, 오류의 원인 r은 스크립트가 내 HTML5 <header>
태그에 추가 할 수있는 정규식 패턴 /(<head.*>)/i
를 사용
$response->setBody(preg_replace('/(<head.*>)/i', '$1' . $this->_headerOutput(), $response->getBody()));
,이 문제로 인해이 줄을이었고, t는이 문제를 해결 나는 /<head(?!er).*?>/i
그래서 방화범이 많은 재귀를 말하는 이유는 그것이 bajillion 시간을 실행하려고하는 신호가 아닙니까? – Moak
@Moak - 확인해 보니 정상적으로 작동하는 것 같습니다 : http://jsbin.com/onaye4, 그래서 문제는 다른 곳에서 발생할 가능성이 큽니다. 원래 함수가 무한 재귀를 가질 수 있습니다. 즉,'ZFDebugCollapsed'는 하나를 가지거나 시나리오가 더 복잡합니다 (예를 들어, 전체 코드가'onload'에 바인드 된 함수에 포함되어 있습니다). – Kobi
, 그걸 알아 내야 할 것입니다. 아마도 다른 jQuery 플러그인에 의해 트리거되었을 것입니다. 스크립트를 제외한 모든 스크립트를 비활성화하면 오류가 발생하지 않고 작동하기 때문입니다. – Moak