سؤال

أريد لتجميل بعض المناطق من موقع الويب الخاص بي مع بعض الرسوم المتحركة مسج هنا و هناك و أنا أبحث عن اياكس رمز تماما منذ رمز القائمة هو وجود بعض عبر متصفح التوافق.ومع ذلك ، منذ مسج مكتبة جافا سكريبت, أنا قلقة على صفحاتي لا يعمل بشكل صحيح عندما يتم تشغيل جافا سكريبت أو لا توجد في متصفح المستخدم.

سأعطيك مثالا:حاليا, أنا باستخدام CSS نقية تلميح إلى إعطاء المستخدمين (لاعبين, الموقع هي لعبة متصفح) معلومات عن المستخدمين الآخرين.على سبيل المثال ، إذا كان لاعبين آخرين في اللعبة تلبية واحدة أو أكثر من شروط الهدف يتم عرض رمز بجوار اسمه عند تحوم حول الهدف الرمز معلومات بشأن الأسباب وراء الهدف هو عرض.هذه المعلومات مفيدة جدا, كما أنه يساعد على لاعبي فريقي أن تعرف من ينبغي أن خطة الهجوم التالي في اللعبة.

حاليا أعمل مثل هذه تلميحات باستخدام CSS.لدي شعبة الأم الذي يحمل صورة رمز الهدف من فئة "معلومات".ثم يكون div داخل ذلك مع فئة "تلميح" أنه على الدولة تحوم من "معلومات" class أنه هو الوارد في, يظهر, ولكن في حالة طبيعية مخفية.أعتقد انها كانت ذكية عندما قرأت عن ذلك و بما لا يتم استخدام جافا سكريبت يعمل على أي CSS متوافق مع المتصفح.

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

حتى ما أطلبه اعتقد هو, كيف تجعل مسج الموقع تتحلل برشاقة على المتصفحات التي لا تدعم جافا سكريبت, لكن على خلاف ذلك هل دعم معظم CSS ؟ هدفي هو موقع وظيفة على المستوى الأساسي لجميع المستخدمين بغض النظر عن الاختيار في المتصفح.الرسوم المتحركة هو مثال جيد ولكن أنا أيضا قلق أكثر ديناميكية بت, مثل التحديث التلقائي مع اياكس, الخ.هل هناك أي موارد جيدة حول كيفية تحقيق ذلك ، أو هل لديك أي نصيحة حول أفضل طريقة هذه والتحلل يمكن أن يتحقق ؟

شكرا

PS:غير ذي صلة تماما ، ولكن فايرفوكس يبدو أنها تعتقد أن "التحلل" ليست كلمة ، ولكن "على التحلل البيولوجي" (مع "بيو" بادئة) هو.غريب...

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

المحلول

إذا كنت تنظر في "المتتالية من أجل" css, ألا يمكنك فقط إضافة نمط css في نهاية جدا من كل ما سبق من تعريف css من أجل إلغاء أي تأثير css لديك حاليا على تلميح تأثير ؟

التي css القاعدة إلا أن يعلن إذا كان جافا سكريبت مفعلة و مسج الكشف عنها.

بهذه الطريقة, كنت متأكدا الخاص بك css تلميح تأثير لا في الصراع مع مسج تأثير.

شيء من هذا القبيل:

a.info:hover span{ display:none}

مع استخدام "js_enabled" الطبقة لجعل هذا css حكم المشروط.

يمكنك أيضا القيام بذلك عن طريق إضافة css القاعدة على الطاير:

function createCSSRule(rule,attributes)
{
    //Create the CSS rule
    var newRule = "\n"+rule+"{\n";
    for (var attribute in attributes)
    {
        newRule += "\t" + attribute + ": " + attributes[attribute] + ";\n";
    }
    newRule += "}\n";

    //Inject it in the style element or create a new one if it doesn't exist
    styleTag = $E('style[type="text/css"]') || new Element("style").setProperty('type','text/css').injectInside(document.head);
    if(window.ie)
    {
        styleTag.styleSheet.cssText += newRule;
    }
    else
    {
        styleTag.appendText(newRule);
    }
}

أبسط حل فصل CSS و Javascrip هو إزالة الطبقة css

function jscss(a,o,c1,c2)
{
  switch (a){
    case 'swap':
      o.className=!jscss('check',o,c1)?o.className.replace(c2,c1): <-
      o.className.replace(c1,c2);
    break;
    case 'add':
      if(!jscss('check',o,c1)){o.className+=o.className?' '+c1:c1;}
    break;
    case 'remove':
      var rep=o.className.match(' '+c1)?' '+c1:c1;
      o.className=o.className.replace(rep,'');
    break;
    case 'check':
      return new RegExp('\\b'+c1+'\\b').test(o.className)
    break;
  }
}

هذا المثال الدالة تأخذ المعلمات الأربعة:

a
يحدد الإجراء الذي تريد وظيفة لأداء.
o
الكائن في السؤال.
c1
اسم الدرجة الأولى
c2
اسم الدرجة الثانية

الإجراءات الممكنة هي:

swap
يستبدل الدرجة c1 مع فئة c2 في وجوه o.
add
ويضيف الدرجة c1 إلى كائن o.
remove
يزيل الطبقة c1 من وجوه o.
check
اختبار ما إذا كانت الدرجة c1 هو بالفعل تطبيقها على كائن o وإرجاع true أو false.

نصائح أخرى

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

ويقول على سبيل المثال انا ذاهب الى استخدام مسج لتبديل عنصر عند النقر على مربع. على تحميل الصفحة ألقي نظرة على مربع وتحديث العنصر وفقا لذلك. إذا لم يتم تمكين جافا سكريبت العنصر سوف لا تزال تظهر وسوف يكون الموقع تزال صالحة للاستعمال. فقط لا كما لطيفة.

والرجل، لديك لعبة متصفح القائمة، أليس كذلك؟ لديك٪ من المستخدمين أقل من 1 مع شبيبة المعوقين! وأن 1٪ هو عدد المروع، لأنني لا أستطيع المراهنة على أن لديك أقل من ذلك؛)

وعلى أية حال، إذا كنت قلقا حقا حول هذا الموضوع، لا مجرد موقع دون أي جافا سكريبت. وجعلها تعمل 100٪. بعد موقعك يعمل تماما من دون أي نكهة شبيبة، مجرد بداية لتحسين مع مسج (أو أي مكتبة أخرى، مسج هو الأفضل: P). ولكن مع الحذر: لا تغيير أي واحد منكم أتش تي أم أل. انها أسهل مما يبدو.)

ونعم، إذا كان لديك الأشياء التي تعمل دون شبيبة (مثل تلك التلميحات) يبقيه!

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