سؤال

ولقد تم البحث في جميع أنحاء شبكة الإنترنت لمعرفة كيفية الوصول إلى DOM علامات التبويب الحالية لاستخراج المعلومات من صفحة من background.html. وحتى الآن لم أجد أية الحظ، أو على الأقل شيئا أتمكن من الحصول على العمل بشكل صحيح.

لتحديد المشكلة ببساطة. أود الحصول على SRC من iframe على الصفحة. أي اقتراحات؟

هل كانت مفيدة؟

المحلول

وطريقة واحدة، لك علاج هذا كما طلب مرة واحدة إلى النصي المحتوى الذي سوف تجلب دوم تريد الوصول إليه. http://code.google.com/chrome/extensions/messaging.html#simple

وأساسا، لديك مجموعات النصي المحتوى يصل المستمع:

chrome.extension.onRequest.addListener(
  function(request, sender, sendResponse) {
    if (request.greeting == "hello")
      sendResponse({farewell: "goodbye"});
    else
      sendResponse({}); // snub them.
  });

ويرسل الصفحة خلفيتك طلب عمرا واحد:

chrome.tabs.getSelected(null, function(tab) {
  chrome.tabs.sendRequest(tab.id, {greeting: "hello"}, function(response) {
    console.log(response.farewell);
  });
});

وعند إرسال استجابة الخاص بك، فإنك إرساله عن بيانات JSON، يمكنك جلب كل ما تريد (مثل أتش تي أم أل، دوم، والنص، الخ).

وهذا هو حاليا الطريقة فقط للسماح للصفحة خلفية معرفة أي شيء حول محتويات الصفحة. تذكر أنك ستحتاج البرامج النصية المحتوى والأذونات التبويب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top