2017-02-07 5 views
1

페이지에서 두 번이나 특정 파일이나 cdn을 포함하여 여러 번이 문제에 직면했을 때 cdn의 기능이 손상되었습니다. 해결책은 페이지 당 한 번만 추가하는 것입니다. 이제 그 원인을 알고 싶습니다.한 페이지에서 cdn을 두 번 포함하면 왜 cdn의 기능이 손상됩니까

예를 들어, index.php 페이지에 부트 스트랩 cdn이 첨부되어 있고 header.php에 부트 스트랩 cdn이 포함되어 있다고 가정합니다. 이제 header.php를 index.php 페이지에 포함 시켰습니다. 결과적으로 index.php의 일부분이 기능을 잃어 버리는 것을 볼 수 있습니다. 아무도 나에게 그것의 핵심 원인을 말할 수 있습니까? 그것은 어떻게 든 inclusion thread를 깨뜨리는가?

같은 기능을 페이지에 두 번 포함 시켜서 이해하려고했습니다. 그러나 페이지와 함수 모두 잘 작동하는 것 같습니다.

나는이 문제에 대해 약간 혼란스럽고 호기심이 많습니다. 프로그래밍 관련 서적을 읽은 적이 없으므로 초급 수준의 질문이 될 수 있습니다.이 경우 나는 사과해야 할 것입니다. 미리 감사드립니다.

답변

1

문제를 일으키는 js와 jquery라는 것을 알았습니다. jquery와 js cdn을 두 번 포함하면 callConflict이 생성됩니다. 이것이 자바 스크립트 기능이 제대로 작동하지 않는 이유입니다.

세 가지 방법으로 우리는이 한 번만 CDN (가장 확실한 해결책)을 포함

  1. 을 problem-- 해결할 수 있습니다.

  2. 이미 jquery를로드했는지 여부를 확인하십시오. 아래의 코드 줄을 사용하십시오 - window.jQuery || document.write('<script src="js/jquery-1.7.2.min.js"> <\/script>')

  3. 모든 라이브러리가 각 호출을 인스턴스화하기 위해 $ 키워드 마크 업을 사용하고 있습니다. 우리는 새로운 마크 업을 생성해야합니다. 그런 다음 모든 jquery 호출에 대해 새 마크 업을 사용해야합니다. var $jq = jQuery.noConflict(); 사용 --- 새로운 마크 업을 생성합니다. $jq