سؤال

لدي صفحة تغطي Divs من الزوايا الدائرية. وعلى كل DIV (بما في ذلك جميع divs الداخلية، يمتد داخل هذا div) أسمي العديد من الأحداث المتعلقة بهم. الآن المشكلة التي أواجهها هي وقت التحميل. هل لدينا أي نهج لتحميل البرنامج النصي للزوايا الدائرية أولا في وظيفة "جاهزة" وبقية الأحداث ديناميكيا عندما أكون فوق الدف الرئيسي؟ أي نهج يقلل من وقت التحميل سيكون له مساعدة كبيرة!

مثال:

$(function(){
    $('.inner').corner({
        tl: { radius: 6 },
        tr: { radius: 6 },
        bl: { radius: 6 },
        br: { radius: 6 }
    });

    // loadDivEvents() in this we call the rest of the events upon
    // mouseover or any other event without multiple calls

});

function loadDivEvents(){
    //this may have many events/ajax calls
}
هل كانت مفيدة؟

المحلول 2

أنا إصلاح هذا الشيء عن طريق الذهاب مع الصور بدلا من divs. لقد وجدت أن تكون أفضل طريقة لحل هذا.

نصائح أخرى

ما هي المشكلة الفعلية مع وقت الحمل، إذا كنت قد أسأل؟

عند تحميل الصفحة لأول مرة، تتمثل أي وظائف ذات صلة الأحداث (عادة) فقط بالتعادل بالعناصر الموجودة في الصفحة حتى الآن وعندما يحدث الحدث، سيتم تنفيذ الدالة المتعلقة بالحدث. لذلك لا أعرف إذا كان هذا سوف يؤثر حقا على وقت تحميل صفحتك.

ما يمكن أن يؤثر على وقت تحميل صفحتك هو وجود طن وأطنان من الوظائف المتعلقة بالحدث التي تحاول ربطها في وقت واحد على تحميل الصفحة.

على سبيل المثال، إذا كان لدي 10 قوائم، وتلك قائمة لديها 10 عناصر قائمة، وأريد أيا من عناصر القائمة لتشغيل الأخضر على التحويل - إذا كان لدي جافا سكريبت تحدد كل من هذه الأحداث 100 بشكل منفصل، والتي قد تؤدي إلى ضريبة علوي وبعد

ولكن!

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

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

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