سؤال

لقد قمت بإنشاء برنامج نصي مسج بسيط يتم حلقه من خلال مجموعة من عناوين URL ويفتح نوافذ متعددة.

هذا يعمل بشكل جيد على غالبية المنصات.

ومع ذلك، في IE7 و IE8 على جهاز العميل، فإن المستعرض يفتح نافذة واحدة فقط. لا توجد أخطاء JavaScript موجودة.

لدي نفس الإصدارات على جهاز الكمبيوتر المحمول الخاص بي ويعمل بشكل جيد.

من فضلك هل يمكن لشخص ما يلقي أي ضوء على العوامل المحتملة؟

الآلات المتأثرة: XP SP3 - أي 7 النهائي، ويندوز 7 أي 8

سيتم تقدير أي مساعدة إلى حد كبير.

هتاف بول

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

المحلول

آسف، لا أستطيع متابعة رمز سطر واحد غير المنسق. ولكن ما يلي يعمل في جميع المتصفحات، أتوفر بما في ذلك Firefox 3.5، Opera 10، Chrome 3 و Internet Explorer 6 و 7 و 8:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="es">
<head><title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript"><!--
function openLinks(){
    var linkList = [
        "http://www.google.es",
        "http://www.yahoo.com",
        "http://www.bing.com",
        "http://stackoverflow.com",
        "http://serverfault.com/"
    ];

    $(linkList).each(function(){
        window.open(this);
    });
}
//--></script>
</head>
<body>

<input type="button" onclick="openLinks()" value="Open lots of links">

</body>
</html>

الأخطاء النموذجية المتعلقة بنوافذ النوافذ المنبثقة تشمل:

  • تعيين معرفات إلى Windows وإعادة استخدام نفس المعرف -> تعيين معرفات مختلفة (أو لا شيء إذا لم يكن هناك حاجة)
  • فتح النوافذ المنبثقة غير المطلوبة -> دع المستخدم يؤدي إلى العمل

نصائح أخرى

قد يكون هناك مانع منبثقة ممكن

إذا كنت أتذكر بشكل صحيح، فإن مانع المنبثقة من IE7 + يسمح نافذة واحدة جديدة لكل تفاعل مستخدم في JavaScript، ثم حظرها.

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

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