먼저, 나는 한 번에 답변을 찾을 수 없다는 점에 약간 혼란 스럽습니다. 질문은 codestyle에 관한 것입니다. 우아한 방식으로 jQuery 체인 연결을 중지하십시오.
는 예를 생각해 페이지에 아무런 입력이없는 경우 어떻게됩니까$('input[type=text]').on('click', doSomething);
? 이 선택기의 결과는 null
이며 오류가 발생합니다.
그래서, 우리는 코드가 더 크고 이보다 확인해야합니다 :
var inputs = $('input[type=text]');
if (inputs) {
inputs.on('click', doSomething);
}
내가 jQuery를 사랑하고이 솔루션의 더 우아하고 간단한 양식을 기대하고있다.
UPDATE
이 문제의 원인은 페이지의 3 자 스크립트가 포함 prototype.js
했다. 죄송합니다. 게시하기 전에 샌드 박스에서 문제를 테스트 했어야합니다.
아니, 이것은 바로 이러한 것입니다 * 일 : 당신은 단순히 당신의 예에서 이전을 할 수 있습니다. '$ ("foobarbaz"). ('클릭', 뭐든간에)'라고 쓰면 항상 작동 할 것입니다. – Jon
논리를 따르기 전에 시도하십시오! – Shef
그 이유는 jQuery'$'객체가 owerwritten을 갖기 때문입니다. 사과. 나는이 질문을 삭제해야한다고 생각한다. 모두에게 감사 드려요! – Dan