2016-06-23 3 views
0

사용자가 검색하는 페이지에서 h2>의 내부 텍스트를 추출하는 크롬 확장 프로그램을 만들고 있습니다. 나는 콘텐츠 스크립트에 대해 배웠지 만 그것을 사용해 왔지만 제대로 작동하지 않고 어디에 문제가 있는지 알지 못합니다. 누구든지 나를 도울 수 있다면 크게 감사 할 것입니다.크롬 확장 프로그램의 사용자 페이지에서 데이터 가져 오기

 { 
     "manifest_version": 2, 

      "name": "Header Extractor", 
       "description": "Extension to search header", 
       "version": "1.0", 

       "browser_action": { 
       "default_icon": "icon.png", 
       "16": "icon.png", 
        "48": "icon.png", 
        "128": "icon.png", 
       "default_popup":"popup.html", 
        "default_title": "Open And Search headers" 
         }, 
         "permissions": [ 
          "storage", 
          "activeTab" ,"tabs" 
          ], 
          "content_scripts": [ 
        { 
        "matches": ["<all_urls>"], 
       "js": [ "popup.js"], 
       "run_at": "document_end" 
         } 
          ] 
           } 

답변

0

당신은 이미 결과를 붙여 결과 div을 만들었습니다

document.addEventListener('DOMContentLoaded', function() { 
var link = document.getElementById('button'); 
link.addEventListener('click', function() { 
updateresult(); 
}); 
}); 
function updateresult() { 
var i; 

var x =document.getElementsByTagName("h2"); 

for(i=0; i< x.length ; i++) 
{ 

    document.getElementById("result").innerHTML = (x[i].innerHTML + "\n"); 


}} 

이 내가 사용하고있는 매니페스트 파일은 다음과 같습니다

이는 JS 코드는?

또한 현재 함수는 하나의 h2 값만 반환합니다. 모두 함께 출력하려면 concat을 사용하십시오.

function updateresult() { 
    var i; 
    var x = document.getElementsByTagName("h2"); 
    var string = ""; 
    for(i=0; i<x.length; i++) 
    { 
     string.concat(x[i].innerText + "\n"); 
    } 
    document.getElementById("result").innerText = string; 
} 

보조 메모로 대신 innerText을 사용합니다.

+0

안녕하세요. 답변을 많이 주셔서 감사하지만 아직 작동하지 않습니다. – vinay