2016-10-01 2 views
-1

Как вернуть значение нескольких элементов из плагина Chrome, tabs.executeScript.Получить несколько значений в Chrome.tabs.executeScript

Пожалуйста, введите код ниже.

chrome.tabs.executeScript(
     targetTab.id, 
     { 
      code: "var header = {'top':document.getElementsByClassName('top-card')[0].innerHTML;}" 
     }, 
     function (sourceCode) 
     { 
      myCode = sourceCode; 
      chrome.tabs.create({'url': chrome.extension.getURL('popup.html')}); 
     } 
    ); 

Как здесь я получаю значение класса «топ-карты» Я также хочу значение, скажем, «сноска», «содержание» гораздо больше много классов.

ответ

0

chrome.tabs.executeScript может передавать любые JSON-данные, в том числе простые объекты/массивы.

chrome.tabs.executeScript(targetTab.id, { 
    code: '(' + function() { 
     return { 
      top: document.querySelector('.top-card').innerHTML, 
      footer: document.querySelector('.footer').innerHTML, 
      content: document.querySelector('.content').innerHTML, 
     }; 
    } + ')()' 
}, function(data) { 
    var myCode = data[0]; // data is an array, item 0 is the main page, 1.. for frames 
    console.log(myCode.top, myCode.footer); 
}); 
Смежные вопросы