يتم تشغيل وظيفة جافا سكريبت عند النقر قبل الأوان
عند إنشاء رابط بجماليات مشابهة لعلامة ولكن المقصود منه تنفيذ وظيفة عند النقر قد يواجه المستخدمون سيناريو يتم فيه استدعاء الوظيفة بشكل خاطئ عند تحميل الصفحة. هذا يمنع حدث النقر المطلوب من العمل بشكل صحيح.
المأزق الشائع هو الاستخدام غير السليم للأقواس عند تعيين سمة onclick. بدلاً من sendNode.onclick = SecondFunction()، الذي ينفذ الوظيفة على الفور، يكون بناء الجملة الصحيح هو sendNode.onclick = SecondFunction. يؤدي هذا إلى تعيين مرجع للوظيفة، والتي سيتم تنفيذها فقط عند حدث النقر.
function startFunction() {
var sentNode = document.createElement('a');
sentNode.setAttribute('href', "#");
sentNode.setAttribute('onclick', secondFunction);
//sentNode.onclick = secondFunction();
sentNode.innerHTML = "Sent Items";
//...
}
من خلال حذف الأقواس، يرتبط حدث onclick بشكل صحيح بمرجع وظيفة وليس نتيجة تنفيذها، مما يضمن السلوك المقصود.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3