كيفية تحديد ما إذا كان تطبيق GWT الخاص بي يعمل داخل إطار/iframe أم لا؟

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

  •  28-09-2019
  •  | 
  •  

سؤال

أنا أعمل على تطبيق GWT ، والذي يجب أن يتصرف بطريقة مختلفة قليلاً عندما يتم تشغيله داخل إطار وعند التشغيل مباشرة في نافذة المتصفح. والسؤال هو: كيف نحدد في وقت التشغيل سواء كنا في إطار أم في نافذة؟

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

المحلول

لف قليلاً من JavaScript JSNI:

public static native boolean isFrame() /*-{
    return ($wnd!=$wnd.top);
}-*/;

نصائح أخرى

لم أختبر هذا ولكن بالنظر إلى Javadoc ، يمكنك تجربة شيء مثل:

RootPanel.getBodyElement().getParentElement().getTagName()

ومعرفة ما إذا كان iframe أو أي علامة تحتاجها

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