2016-08-13 2 views
1

크롬 확장 앱에 다음 코드를 추가했습니다. 이 noScript 블록은 브라우저에서 javascript가 비활성화되어있을 때 실행됩니다. 수행하면 다음 내 조각 :크롬 확장 프로그램에서 크롬 브라우저의 javascript를 감지하는 방법이 비활성화되었습니다.

것은

<noscript> 
    <div id="nojs"> 
     <div 
       class="modal-backdrop fade in" style="z-index: 1040;"></div> 
     <div aria-hidden="false" role="dialog" tabindex="-1" class="modal" 
      style="z-index: 1050; display: block; top:26%;"> 
      <div 
        class="modal-dialog"> 
       <div class="modal-content 
smsUser_modalContent"> 
        <div class="modal-header" 
         style="background-color: #428bca"><h4 
          class="modal-title">Information</h4></div> 
        <div class="modal-body smsUser"><p>Warning: 
         Either you have javascript disabled or your browser does not support 
         javascript. To work properly, this page requires javascript to be 
         enabled.</p></div> 
        <div 
          class="modal-footer"></div> 
       </div> 
      </div> 
     </div> 
    </div> 
</noscript> 
+0

코드를 포맷하십시오. 귀하의 질문은 무엇인가? –

+1

자바 스크립트를 사용하지 않으면 확장 기능이 제대로 작동합니다. 너는 그걸 전혀 필요로하지 않는다. –

+0

답장을 보내 주셔서 감사합니다. 네, 잘 작동합니다. Chrome 확장 프로그램에서 Chrome 브라우저의 자바 스크립트가 사용 중지/사용 설정되었다는 메시지를 표시 할 수 있습니까? 웹 사이트/웹 응용 프로그램의 경우 noscript 태그로 작업하고 있습니다. 그러나 크롬 확장을 위해 그것은 작동하지 않습니다. 어떤 제안이든지 받아 들일 만합니다. –

답변

0
  1. 은, 확장의 매니페스트

    { 
        "name": "My extension", 
        ... 
        "permissions": [ 
        "contentSettings" 
        ], 
        ... 
    } 
    
  2. 이벤트에서 페이지 contentSettings 권한을 선언 검색 chrome.contentSettings[type].get()를 호출 내 코드 :입니다 javascript settings. 많은 샘플 here.

    chrome.contentSettings['javascript'].get({ primaryUrl: url}, function(details) { 
        const value = details.setting; 
        if (value === "block") { 
        // javascript is blocked 
        } 
    }); 
    
  3. 일단 자바 스크립트가 비활성화 감지, 당신은 현재 웹 페이지의 HTML 마크 업을 보여 콘텐츠 스크립트에게 Message Passing 또는 Programmatic injection 같은 것을 사용할 수 있습니다.

관련 문제