2013-05-12 4 views
6

jQuery의 특정 비트가 작동하지 않는 이유는 jQuery가 전혀 작동하지 않기 때문입니다. W3 학교와 같은 장소에서 직접 복사 한 작업 예제조차도 아닙니다.jQuery가 가정용 (로컬) 컴퓨터에서 작동하지 않는 이유는 무엇입니까?

필자는 소프트웨어 개발 업무에서 jQuery를 사용하고 있으며 전문가는 아니지만 꽤 익숙합니다. 처음으로 jQuery를 가정 프로젝트에서 사용하려고 할 때 어떤 작업을하든 그 중 아무 것도 작동하지 않습니다. 아래에 포함 된 예제는 생각할 수있는만큼 간단하며 작동하지 않을 수도 있습니다.

<!DOCTYPE HTML> 
<html> 
<head> 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
</head> 
<body> 
<div> 
    <p>Old Stuff</p> 
</div> 
<script type="text/javascript"> 
    $('p').text('New Stuff'); 
</script> 
</body> 
</html> 

무엇이 잘못되었을 수 있습니까?

+0

w3schools가 작동하지 않을 때 놀랄 일이 아닙니다. http://w3fools.com을 살펴보십시오. – mplungjan

+0

올바르게 jQuery를로드하면 예제가 작동합니다. 즉, 파일에서 http : //를 의미하거나 페이지를 업로드하십시오. http://jsfiddle.net/mplungjan/8tXC2/ – mplungjan

+0

당신 은요? 파일 관리자에서 페이지를여시겠습니까? – BoltClock

답변

8

코드는 정상입니다.

코드를 배포하지 않았기 때문에 브라우저가 기본값으로 file:// 프로토콜로 설정되어 있기 때문에 스크립트가 다운로드되지 않습니다. 이를 해결하기 위해

, 스크립트 태그에 http:을 추가

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"> 
                      </script> 
+0

나는 그것을 실제로 여기에서 시험해 보았다. Chrome이 스크립트를로드하지 않습니다. 'http : //'가 지정되어 있지 않으면'http :'가 없으면 브라우저가 루트 폴더에 상대적인 파일을 찾지 않을 것이므로'file : //' – acdcjunior

+0

@mplungjan을 검색 했습니까? –

+0

@mplungjan : 로컬 컴퓨터에서 프로토콜 *이 필요합니다 (이유는 [BoltClock, below] (http://stackoverflow.com/questions/16509740/why-does-no-jquery-work-on-my- home-machine/16509764? noredirect = 1 # comment23701542_16509764)). –

3

변화 당신이 jQuery를 문제가 될 수로드이

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
1

방법이

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 

. //를 사용하여 URL을 시작할 때 // HTTP 또는 HTTPS 프로토콜을 통해 페이지를 탐색 할 때 작동하도록되어 있습니다. 그러나 로컬 파일로 열면 작동하지 않습니다.

다음과 같이 예 난 당신이 jQuery를 포함하려고 제안 HTTP를 통해 작동을 감안할 때 :

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"> 
</script> 
0

사용 http:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
-2

을 당신은 내부의

$('p').text('New Stuff'); 

을 배치하는 것을 잊었다 문서 준비는 다음과 같이 할 수 있습니다 :

$(function(){ 
    $('p').text('New Stuff'); 
}); 
+0

아니요. 그것은 P 이후입니다. – mplungjan

+1

하지만 이것이 최고의 방법은 아닙니다. jQuery js 파일 옆에 jQuery를 사용하는 연습입니다. src 또는 로컬에 포함 시키십시오. 문서에서이 작업을 수행해야합니다. 준비 함수 – Milson

+0

모범 사례는 다루지 않습니다. 인라인 스크립트가 필요할 때가 있고 어떤 사람들은 스크립트가/body 앞에 있어야하며 다른 스크립트는 머리에 있어야한다고 주장합니다. 이 코드는 작동합니다. 문제는 file : // 대 http : // – mplungjan

0

브라우저 URL에서 스크립트 위치를 호출하여 스크립트에 대한 적절한 권한이 있는지 확인하십시오. 브라우저 URL에 "http://someloaction/js/jquery.min.js"을 입력하면됩니다. "금지됨"을 볼 수 있으면 권한이 괜찮습니다.

관련 문제