مرحبًا أيها المجتمع!
أحاول دراسة كيفية إنشاء إضافة (plugin) في Discourse. حاليًا، أحاول معرفة كيفية وضع زر في زاوية الشاشة، وعند النقر عليه، معالجة الطلب. كيف يمكنني فعل ذلك؟ الأمر بسيط جدًا، لكنني لم أستطع استيعابه.
أيضًا، رأيت في بعض الإضافات مكالمات مثل includePostAttributes و decorateWidget. أين يمكنني العثور على قائمة بجميع الطرق التي يسمح Discourse باستخدامها؟
كما ترون، أضفت دائرة صغيرة في الزاوية تمثل الزر. يجب أن يطفو الزر في الهواء (أي أنه إذا قمت بالتمرير للأسفل، سيبقى في الزاوية). المنطق الذي سيتم تنفيذه عند النقر، سأحاول إضافته بنفسي، ولكن لجعل الأمر أكثر وضوحًا، حاليًا أحاول فهم كيفية فتح نافذة تنبيه (فقط للممارسة).
ما تبحث عنه يُسمى position: fixed وهو خاصية في CSS. يمكنك قراءة المزيد حول تموضع CSS هنا
تجعل position: fixed العنصر يبقى في نفس الموضع (نسبيًا إلى نافذة العرض) حتى لو قمت بالتمرير للأسفل.
لست متأكدًا تمامًا مما تحاول تحقيقه هنا، ولكن إذا كنت تريد فقط فتح صندوق تنبيه عند النقر على زر، فستحتاج إلى مستمع للأحداث. يمكنك قراءة المزيد عنها هنا
هل هناك مشكلة محددة تحاول حلها يمكن أن نساعدك فيها؟
شكرًا مرة أخرى على المعلومات. أنا على دراية بكل ذلك. أعتقد أن مشكلتي هي أنني لا أفهم أين يجب وضع ملفات CSS. لدي ملفات Ruby وملفات JS، لكن أين توضع ملفات CSS/Sass؟