ملحقات متصفح كروم:كيفية تفعيل صفحة عمل جميع الروابط المنتهية ولايته معين الصفحة ؟

StackOverflow https://stackoverflow.com/questions/2483705

سؤال

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

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

المحلول

  1. جوجل كروم API لا يكون API, ولكن وظيفة تريد يمكن تنفيذها باستخدام معيار جوجل كروم امتداد API.
  2. تحتاج إلى تنفيذ المحتوى النصي
  3. المحتوى النصي يجب تعديل دوم من الصفحة التي تريد التعامل معها تجاوز جميع الروابط المنتهية ولايته مع العرف جافا سكريبت التي سوف تفعل بعض الأشياء فتح النقر على الرابط.

تعديل الرابط href يمكنك أن تفعل شيئا مثل هذا:

function processLink(element, newHref) {
  var a = document.createElement("a");
  a.href        = newHref;
  a.textContent = element.textContent;
  a.title       = element.title;

  element.parentNode.replaceChild(a, element);
}

تحديث 1.

بدلا من newHref يمكنك توليد شيئا مثل

a.href = "javascript:processOutgoingLinkClick('" + element.href + "')"

وظيفة processOutgoingLinkClick ينبغي أن تتضمن المعالجة الفعلية من فوق.

نصائح أخرى

مجرد فضول ، لماذا لن تستخدم أحداث علامة تبويب امتدادات الكروم يمكنك الاستماع إلى Onupdated oncreated. عندما ينقر المستخدم على رابط على الصفحة ، فإنه سيحدث ويطلق حدثًا في حدوده.

لذلك في خلفيتك. html ، يمكنك القيام به:

chrome.tabs.onUpdated.addListener(function(tabId, info) {
  if (info.status === 'loading')
    console.log('Loading url ... ' + info.url)
});

نفس الشيء بالنسبة إلى oncreated. ثم أثناء تحميله ، يمكنك أن تقرر ما يجب فعله مع pageaction الخاص بك.

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