나는이 문제에 대한 해결책을 찾기 위해 거의 하루 종일을 보냈습니다.
Google 글꼴 API 및 jQuery 1.4.4를 사용하여 전체 글꼴을 동적으로 검색하고 표시하는 코드를 작성했습니다.
jQuery를 버전 1.7.2로 변경해야하고 불행히도 내가 작성한 코드가 Internet Explorer를 제외한 모든 브라우저에서 잘 작동한다는 것을 알았습니다.
몇 가지 테스트를 통해 Internet Explorer $ .getJSON 또는 $ .ajax가 1.4.4 이상의 jQuery 버전을 사용할 때 Google에서 JSON 글꼴 데이터를로드하지 못한다는 사실을 발견했습니다.
$(function(){
$.getJSON('https://www.googleapis.com/webfonts/v1/webfonts?key=XXXXXX', function(json) {
alert(json);
});
});
나는이 너무 시도 몇 가지 조사 후 :
$.ajax({
type: "get",
url: "https://www.googleapis.com/webfonts/v1/webfonts?key=XXXXXXXX",
cache:false,
dataType:'json',
success: function(data){
alert(data);
}
});
두 가지 방법이 1.4.4보다 jQuery를 버전보다 사용하여 Internet Explorer에서 실패
이
내가 사용하고있는 코드입니다 - 아무 반응이 없습니다.왜 그런가? 도움 주셔서 감사합니다.
jQuery를 사용할 수 없다는 것은 부끄러운 일입니다. 그것을 PHP와 함께 섞어서 내가하려는 것을 복잡하게 만든다. 귀하의 도움에 감사 드리며 문제가 동일한 원산지 정책으로 인해 발생할 수 있지만 위의 문제는 1.4.4 이상의 jQuery에서만 발생한다는 것이 이상합니다 (jQuery 1.4.4가 모두 정상적으로 작동 함). 나는 jQuery 버전이 무엇이든 관계없이 브라우저의 동일한 기원 정책이 원격 URL을 차단할 것이라고 생각했을 것이다. 어쩌면 jQuery 1.4.4에는이 동일한 출처 정책에 대한 방법이있을 수 있습니다. 그것이 무엇인지 아는 것이 흥미로울 것입니다. 어쨌든, 고맙습니다, 나는 당신의 코드를 시도 할 것입니다 :) – effectica
괜찮습니다! jQuery 1.4.4에서는 작동하지만, 최신 버전에서는 작동하지 않습니다. 그렇다면 이전 버전을 고수해야합니다. 그러나 당신은 그것에 대해 완전히 옳습니다. 어딘가에있는 버그 일 수 있습니다. –