إدخال البرنامج النصي ديناميكيا مع جافا سكريبت
-
22-09-2019 - |
سؤال
قصة قصيرة طويلة أنا أعمل على امتداد Google Chrome. لا تتمتع الامتدادات بالوصول إلى المتغيرات في نطاق الصفحة التي تعمل عليها افتراضيًا (تحتاج إلى التواصل من خلال DOM).
ما أحاول القيام به هو إدراج نص في الصفحة ؛ هذا يعمل بشكل جيد من خلال تحديد علامة البرنامج النصي وسمة SRC.
المشكلة هي أن هذا البرنامج النصي يحتاج إلى تهيئة متغير مسبقًا. من أجل تهيئة هذا المتغير ، أحاول إنشاء عنصر نص برمز مع رمزه المضمّن (بدلاً من تحميله من مصدر خارجي) ، لكنني أواجه مشكلة في العمل.
هل هذا ممكن ، وإذا كان الأمر كذلك ، كيف يمكنني تحديد المصدر داخل البرنامج النصي؟ لقد حاولت إلحاق عقدة نص تحتوي على مصدر JS إلى عنصر البرنامج النصي ولكن دون جدوى.
المحلول
إنها تمتص ، لكن أفضل طريقة للقيام بذلك هي على الأرجح توصيل بياناتك عن طريق حقنها في DOM: http://code.google.com/chrome/extensions/content_scripts.html#host-page-communication
قد تكون قادرًا أيضًا على تحقيق ذلك من خلال القيام بشيء مثل:
var script = document.createElement('script');
script.type = 'text/javascript';
script.text = 'alert("It works!");';
document.head.appendChild(script);
لم أختبر هذا ، لكنني أعتقد أنه سيعمل من نصوص المحتوى الخاصة بك.