بتـــــاريخ : 2/26/2011 5:49:02 AM
الفــــــــئة
  • الحـــــــــــاسب
  • التعليقات المشاهدات التقييمات
    0 1008 0


    طريقة لإيجاد قيمة J المحتملة لجميع المتصفحات (تقريباً) لتحليل Gumblar.cn

    الناقل : elmasry | العمر :42 | الكاتب الأصلى : Xacker | المصدر : www.arabteam2000-forum.com

    كلمات مفتاحية  :

    السلام عليكــم ورحمـة الله وبركاتــه ،،

    كتبت هذا

    <html>
    <head>
    <style type="text/css">
    body { font-family: tahoma,verdana,arial; }
    dfn { font-weight: bold; }
    dfn.pass, dfn.pass var { color: #060; }
    dfn.fail, dfn.fail var { color: #900; }
    </style>
    <script src="sniffer.js" type="text/javascript"></script>
    </head>
    <body>
    <script type="text/javascript">
    var navprops = ['appVersion','userAgent']
    var winprops = ['ScriptEngine','ScriptEngineBuildVersion','ScriptEngineMajorVersion','ScriptEngineMinorVersion']
    document.write('<h3>Navigator properties:<\/h3><ul>');
    for( var x = 0; x < navprops.length; x++ ) {
                    if (navprops[x]=='userAgent'){
                            var s = '<li><dfn class="pass"><var>'+ navprops[x] +'<\/var>:<\/dfn> <var'+ ((navprops[x]=='appVersion'||navprops[x]=='userAgent')?' style=\"white-space: normal;\"':'') +'>'+ ((navigator[navprops[x]]&&typeof(navigator[navprops[x]])!='string'&&typeof(navigator[navprops[x]])!='boolean')?typeof(navigator[navprops[x]]):navigator[navprops[x]]) +'<\/var><\/li>\n';
                            }
                    if (typeof(s)=='string'){
                            document.write(s); break;
                            }
    }
    document.write('<\/ul><h3>Navigator methods:<\/h3><ul>'+
            '<li>'+(((window.ScriptEngine&&ScriptEngine().indexOf('JScript')+1)||navigator.javaEnabled)?('<dfn class="pass"><var>javaEnabled()<\/var>:<\/dfn> <var>'+navigator.javaEnabled()+'<\/var><\/li>'):'<dfn class="fail"><var>javaEnabled()<\/var>:<\/dfn> <var>undefined<\/var><\/li>')+
            '<\/ul><h3>Window.ScriptEngine:<\/h3><ul>');
           
    var j = "";

    for( var x = 0; x < winprops.length; x++ ) {
            document.write('<li><dfn class="'+((typeof(window[winprops[x]])=='undefined')?'fail':'pass')+'"><var>'+winprops[x]+'<\/var>:<\/dfn> <var>'+(window[winprops[x]]?window[winprops[x]]():window[winprops[x]])+'<\/var><\/li>\n');
            if (typeof(window[winprops[x]]?window[winprops[x]]():window[winprops[x]])=='number'){
                    j += window[winprops[x]]?window[winprops[x]]():window[winprops[x]];
             }
    }
    document.write('\n<li><dfn class="'+((j.length<=0)?'fail':'pass')+'"><var>j<\/var>:<\/dfn> '+ ((j.length<=0)?'undefined':j) +'<\/li>');
    </script>
    </body>
    </html>


    والذي لو قمت برفعه لمساحة ما
    مع ملف sniffer.js المرفق

    سيقوم بإظهار شئ قريب من هذا
    (على MSIE 7.0 كمثال)

    ارفق صورة : monthly_05_2009/post-7008-1242673120.png

    من ثم تستطيع أن تقوم بوضع هذه الصفحة في موقع يسمح باختبار شكل ظهور الصفحة لك على جميع المتصفحات العالمية الموجودة حالياً (تقريباً) بإصداراتها المختلفة مثل:
    http://browsershots.org

    وهذا ما فعلته
    Resized to 74% (was 883 x 441) - Click image to enlargeارفق صورة : monthly_05_2009/post-7008-1242676630.png


    لاحظوا كيف أن متصفح IE تقريباً الوحيد الذي يعيد قيم، يمكن من خلال هذه الصور أن أحصل على كافة قيمة j (مرة أخرى أقول تقريباً لكي أترك احتمال للصدفة وللبرمجة السيئة)
     
    ملف مرفق(ملفات)
     
    ملف مرفق  sniffer.rar (3.41كيلو )

    كلمات مفتاحية  :

    تعليقات الزوار ()