سؤال

على سبيل المثال:

script.js:

function functionFromScriptJS() {
    alert('inside functionFromScriptJS');
}

iframe.html:

<html>
<head>
<script language="Javascript" src="script.js"></script>
</head>
<body>

<iframe>
  <body>
     <script language="JavaScript">
       functionFromScriptJS();
     </script> 
  </body> 
</iframe>

</body>
<html>

سبق الدعوة إلى functionFromScriptJS() لا يعمل.

أول تخمين الأم.functionFromScriptJS() لا يعمل أيضا.

هل من الممكن الوصول إلى هذه خارجي وظيفة من iframe عندما تشمل ليس في الإطار نفسه ولكن في الأصل الوثيقة ؟

@تحرير: لذا كان خطأي أنني وضعت الوثيقة داخل iframe الوسم وأنا sould يجب وضعها في ملف منفصل و المحددة من خلال src attrubute من الوسم.في هذه الحالة الأم.functionFromScriptJS() يعمل.

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

المحلول

نوافذ الأطر المدمجة لا تدعم المحتوى المضمن.يجب استخدام سمة src للإشارة إلى ملف مختلف.الداخلية نص <iframe> الوسم سيتم عرض المتصفحات التي لا تدعم نوافذ الأطر المدمجة.

على سبيل المثال:

<iframe src="someFile.html" width="100%" height="300px">
  <p>Your browser does not support iframes.</p>
</iframe>

وبمجرد الانتهاء من تحميل الصفحة ثم يجب أن تكون قادرة على استدعاء البرنامج النصي باستخدام parent.functionFromScriptJS();

نصائح أخرى

أفضل حل هنا أعتقد أن استخدام iframe (وإن لم يكن رسميا مستنكر ، فإنه لا يظهر في XHTML 1.1 المواصفات) و استخدام اياكس على الاستيلاء على صفحة التحميل في <div>

ثم جافا سكريبت وظائف العمل بشكل طبيعي!

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