سؤال

ما هي أفضل طريقة لإزالة إطار الصفحة تلقائيا؟

ولقد استعملت هذا النوع من التعليمات البرمجية قبل:

<script language="JavaScript">
setTimeout ("changePage()", 3000);
function changePage() {
if (self.parent.frames.length != 0)
self.parent.location="http://www.example.com";
}
</script>
هل كانت مفيدة؟

المحلول

هل يعني إذا كان شخص ما قد وضع إطار حول المحتوى الخاص بك؟ إذا كان الأمر كذلك، كنت في حاجة إلى أي مكان التالية في صفحة HTML الخاص بك للقفز خارج الإطار من:

<script type="text/javascript">
if (window.top.location != window.location) {
  window.top.location = window.location;
}
</script>

نصائح أخرى

وهنا البديل الذي هو أكثر من عام في أنه لا اسم URL الأم، ولا استخدام استدعاء دالة منفصلة:

// is the current page at the top of the browser window hierarchy?
if (top.location != self.location)  
{
    // it isn't, so force this page to be at 
    // the top of the hierarchy, in its own window
    top.location = self.location    
}

هل لأنها بهذه الطريقة إذا كنت ترغب في خطوة لكسر الإطار للم يظهر في التاريخ

if ( self.location !== top.location )
{
    top.location.replace( self.location );
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top