복붙노트

[JQUERY] 자바 스크립트 CONSOLE.LOG는 오류가 발생합니다 : "동기 XMLHttpRequest를 메인 스레드에서 사용되지 않습니다 ..."

JQUERY

자바 스크립트 CONSOLE.LOG는 오류가 발생합니다 : "동기 XMLHttpRequest를 메인 스레드에서 사용되지 않습니다 ..."

해결법


  1. 1.이것은 내가 게으름 때 나에게 일어난 반환 된 내용의 일부로서 스크립트 태그를 포함. 예를 들면 :

    이것은 내가 게으름 때 나에게 일어난 반환 된 내용의 일부로서 스크립트 태그를 포함. 예를 들면 :

    일부 HTML 내용 :

    <div> 
     SOME CONTENT HERE
    </div>
    <script src="/scripts/script.js"></script> 
    

    당신이 그 통해 XHR 같은 HTML 콘텐츠를 반환하는 경우, 당신은 jQuery를 그 스크립트를 얻을 수있는 전화를하게됩니다 것을, 내 경우에는 적어도 나타납니다. 당신이 로딩을 계속 스크립트를 필요로 가정하기 때문에 그 호출은 비동기 플래그 거짓으로 발생합니다.

    당신은 더 나은 어떤 종류의 바인딩 프레임 워크에보고 단지 JSON 객체를 반환하거나 백엔드에 따라 당신은 당신이 당신의 스크립트를로드하는 방식을 변경할 수하는 주형에 의해 제공 될 것입니다 이와 같은 상황에서.

    또한 관련 스크립트를 잡기 위해 jQuery의 getScript ()를 사용할 수 있습니다. 여기에 그것은 단지 jQuery를 예제의 직선 사본, 그러나 스크립트 방법 있음을로드 할 때 내가 던진 경고를 보이지 않아요, 바이올린입니다.

    <script>
    var url = "/scripts/script.js";
    $.getScript(url);
    </script>
    

    http://jsfiddle.net/49tkL0qd/


  2. 2.경고 메시지는 false로 비동기 플래그를 설정 메인 쓰레드 내에서 XMLHttpRequest의 요청 때문일 수 있습니다.

    경고 메시지는 false로 비동기 플래그를 설정 메인 쓰레드 내에서 XMLHttpRequest의 요청 때문일 수 있습니다.

    https://xhr.spec.whatwg.org/#synchronous-flag:

    미래 방향은 작업자 스레드에 대한 XMLHttpRequests를 허용하는 것입니다. 이 메시지는 그 효과에 대한 경고하기위한 것입니다.


  3. 3.사실 : 나는 또한 같은 문제가 있지만, 비동기 넣어 그것을 고칠 수에 직면했다. 나는 기본적으로 사실을 알고 있지만 명시 적으로 쓸 때 그것은 작동

    사실 : 나는 또한 같은 문제가 있지만, 비동기 넣어 그것을 고칠 수에 직면했다. 나는 기본적으로 사실을 알고 있지만 명시 적으로 쓸 때 그것은 작동

    $.ajax({
       async: true,   // this will solve the problem
       type: "POST",
       url: "/Page/Method",
       contentType: "application/json",
       data: JSON.stringify({ ParameterName: paramValue }),
    });
    

  4. 4.비주얼 스튜디오 2,017분의 2,015의 라이브 디버거가 사용되지 않는 호출을 포함하는 코드를 주입한다.

    비주얼 스튜디오 2,017분의 2,015의 라이브 디버거가 사용되지 않는 호출을 포함하는 코드를 주입한다.


  5. 5.때로는 스크립트가로드 된 후까지 준비 스크립트하지만 지연이 문서는 아약스 부하에 필요가있다.

    때로는 스크립트가로드 된 후까지 준비 스크립트하지만 지연이 문서는 아약스 부하에 필요가있다.

    jQuery를는 holdReady () 함수와이를 지원한다.

    사용 예제 :

    $.holdReady(true);                              //set hold
    function releaseHold() { $.holdReady(false); }  //callback to release hold
    $.getScript('script.js', releaseHold);          //load script then release hold
    

    실제 스크립트로드 (오류없이) 비동기이지만, 자바 스크립트의 나머지 부분은 준비 문서 후에 실행하는 경우 효과는 동기입니다.

    선적 서류 비치: https://api.jquery.com/jquery.holdready

    JQMIGRATE에서 :


  6. 6.이 경고를 방지하려면 사용하지 마십시오 :

    이 경고를 방지하려면 사용하지 마십시오 :

    async: false
    

    을 $ 아약스의 () 호출한다. 이의는 사용되지 않는 것을 XMLHttpRequest의 유일한 기능입니다.

    기본값은

    async: true
    

    jQuery를이되지 않는 동기 XMLHttpRequest의가


  7. 7.@Webgr 부분적인 대답은 실제로 나 콘솔 로그 @이 경고, 부끄러움 많은 downvotes를 가져 그 대답의 다른 부분을 디버깅 도움이 :(

    @Webgr 부분적인 대답은 실제로 나 콘솔 로그 @이 경고, 부끄러움 많은 downvotes를 가져 그 대답의 다른 부분을 디버깅 도움이 :(

    어쨌든, 여기에 내가 내 경우에는이 경고의 원인이 무엇인지 발견하는 방법이다 :

    내 경우에는, 다른 플러그인은 각 아약스 호출 후 2의 .js 라이브러리 절대적으로 필요하거나 필요하지 않은로드되었다. 악성 플러그인을 비활성화하면 로그에서 경고를 제거했습니다. 그 시점에서, 당신도 스스로 문제를 해결하기 위해 시도 할 수 있습니다 (예를 들어, 특정 페이지 또는 이벤트에 스크립트의 로딩을 제한 -이 너무 여기에 답변을 특정) 또는 그것을 해결하기 위해 접촉 타사 플러그인 개발자.

    이 사람을 도움이되기를 바랍니다.


  8. 8.나는 모든 인상적인 답변에서 찾고있다. 나는 그가 그에게 문제를주고있다 코드를 제공한다고 생각합니다. 당신이 page.php에서 JQuery와에 링크에 스크립트가있는 경우 예를 아래에 주어진 당신은 그 통지를 얻을.

    나는 모든 인상적인 답변에서 찾고있다. 나는 그가 그에게 문제를주고있다 코드를 제공한다고 생각합니다. 당신이 page.php에서 JQuery와에 링크에 스크립트가있는 경우 예를 아래에 주어진 당신은 그 통지를 얻을.

    $().ready(function () {
        $.ajax({url: "page.php",
            type: 'GET',
            success: function (result) {
            $("#page").html(result);
       }});
     });
    

  9. 9.나는 다음과 같은 경우에 이러한 경고가 :

    나는 다음과 같은 경우에 이러한 경고가 :

    1) 파일 1이 포함 된 <스크립트 유형 = "텍스트 / 자바 스크립트"SRC = "/ 자바 스크립트 / JQuery와 - 1.10.2.js"> . 페이지는 입력 필드가 있습니다. I 입력 필드와 클릭 버튼에 어떤 값을 입력합니다. JQuery와 외부 PHP 파일로 전송한다.

    2) 외부 PHP 파일도 jQuery를 포함하고, 상기 외부 PHP 파일 제가 포함될