# هل Lightbox لم يعد يعمل؟

**URL:** https://meta.discourse.org/t/lightbox-no-longer-working/221834
**Category:** Bug
**Created:** [24 مارس 2022، 1:34ص UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834 "2022-03-24T01:34:32Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![gale](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@gale](https://meta.discourse.org/u/gale)
#### Post date: [24 مارس 2022، 1:34ص UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/1 "2022-03-24T01:34:32Z")

</div>

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

لا أرى أي إعدادات جديدة في واجهة المسؤول لتمكين/تعطيل هذه الميزة. لست متأكدًا _متى_ توقفت هذه الوظيفة عن العمل. Discourse محدث بالكامل وفقًا لصفحة /admin/upgrade.

هل هناك أي طريقة لتصحيح سبب عدم عرض الصور في Lightbox؟ _يمكنني_ رؤية في كود HTML أن فئة “Lightbox” يتم تطبيقها على الصور بشكل صحيح (وهناك أيضًا فئة “Lightbox” على وسم `a` الذي يلتف حول الصورة):

 ![image](https://global.discourse-cdn.com/meta/original/3X/8/3/8324412cd05231b699554fde580eb184c1878ccd.png)

موقعي يستخدم Cloudflare. لست متأكدًا مما إذا كان ذلك قد يتداخل بأي شكل من الأشكال؟

شكرًا!

---

<div class="post-metadata">

### Author: ![SaraDev](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saradev/32/335139_2.png) [@SaraDev](https://meta.discourse.org/u/SaraDev)
#### Post date: [24 مارس 2022، 8:58م UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/2 "2022-03-24T20:58:40Z")

</div>

لقد اختبرت هذا للتو باستخدام إصدار Discourse 2.9.0.beta3 ولم أتمكن من إعادة إنتاج المشكلة.

يؤدي النقر على صورة في موضوع إلى ظهور Lightbox تحتوي على الصورة، ويُظهر HTML أنه يتم تطبيق فئة lightbox على الصورة أيضًا.

أنا أصل إلى Discourse عبر Google Chrome الإصدار 99.0.4844.82، والموقع الذي اختبرته والذي يعمل بنظام Discourse مستضاف عبر Digital Ocean.

نأمل أن يساعد هذا في تقديم المزيد من البصيرة حول ما قد يسبب هذه المشكلة في موقعك.

---

<div class="post-metadata">

### Author: ![itsbhanusharma](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/itsbhanusharma/32/180717_2.png) [@itsbhanusharma](https://meta.discourse.org/u/itsbhanusharma)
#### Post date: [25 مارس 2022، 4:50ص UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/3 "2022-03-25T04:50:16Z")

</div>

> [@gale](#):
>
> موقعي يستخدم Cloudflare.

هل تستخدم أيضًا rocket loader أو أي تحسين آخر لـ JavaScript من Cloudflare على discourse؟

إذا كان الأمر كذلك، فإن أول شيء يجب تجربته هو تعطيل التحسينات المذكورة والمحاولة مرة أخرى.

---

<div class="post-metadata">

### Author: ![gale](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@gale](https://meta.discourse.org/u/gale)
#### Post date: [25 مارس 2022، 9:53م UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/4 "2022-03-25T21:53:48Z")

</div>

لا يبدو أن المشكلة تعتمد على المتصفح أو نظام التشغيل. أراها في Firefox و Chrome و Safari على macOS و Safari على iOS و Firefox/Chrome/Edge على Windows. لا يمكنني تحديد أي تركيبة متصفح/نظام تشغيل تعمل فيها Lightbox بالفعل، لذلك أعتقد أنها مشكلة من نوع ما في الموقع نفسه، ربما إعداد أو إضافة أخرى تكسرها؟

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

> [@itsbhanusharma](#):
>
> هل تستخدم أيضًا rocket loader أو أي تحسين آخر لـ JavaScript من Cloudflare على discourse؟
> 
> إذا كان الأمر كذلك، فإن أول شيء يجب تجربته هو تعطيل التحسينات المذكورة والمحاولة مرة أخرى.

لا، لا أستخدم أي خيارات تحسين أو تصغير في Cloudflare. تم تعطيل كل هذه الخيارات. الشيء الوحيد المُمكّن حاليًا هو التخزين المؤقت لمدة 4 ساعات.

---

<div class="post-metadata">

### Author: ![gale](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@gale](https://meta.discourse.org/u/gale)
#### Post date: [26 مارس 2022، 2:37م UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/5 "2022-03-26T14:37:58Z")

</div>

تمكنت من تكرار موقع الإنتاج الخاص بي محليًا وتكرار المشكلة. اتضح أنها خطأ يظهر بسبب بعض التعليمات البرمجية في مكون سمة مخصص كتبته. لا أزال لا أستطيع تفسير _سبب_ كسر هذا لـ Lightbox أو سبب كون هذه المشكلة حديثة فقط. قد يكون خطأ لم يتم اكتشافه بعد في النواة؟

تعليمات المكون الخاصة بي _بسيطة جدًا_:

```plaintext
import { apiInitializer } from "discourse/lib/api";

export default apiInitializer("0.11.1", (api) => {
  // Render adjustments for post content
  api.decorateCookedElement(
    (elem) => {
      elem.innerHTML = elem.innerHTML.replace(/Finances/, "Test Str");
    },
    { id: "test-decorator", onlyStream: true }
  );
});

```

كل ما يحاول القيام به هو استبدال سلسلة نصية بسيطة في محتوى المنشور المعروض. بطريقة ما، هذا يكسر _جميع_ مربعات الضوء في _جميع_ المنشورات (حتى تلك التي لا تحتوي على السلسلة). التعليق على سطر `elem.innerHTML = ...` يتسبب في عمل مربعات الضوء مرة أخرى.

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

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

---

<div class="post-metadata">

### Author: ![gale](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@gale](https://meta.discourse.org/u/gale)
#### Post date: [31 مارس 2022، 3:48م UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/6 "2022-03-31T15:48:46Z")

</div>

لقد أنشأت مكون سمة بسيطًا يكشف عن مشكلة Lightbox هذه. يجب أن يتمكن أي شخص من تكرار المشكلة في أي تثبيت Discourse عن طريق تنشيط مكون السمة هذا:  
[https://github.com/hayatae/lightbox-theme-component-bug](https://github.com/hayatae/lightbox-theme-component-bug)

إذا كان لدى أي شخص أي حلول بديلة أو اقتراحات ممكنة، فيرجى إخباري! ما زلت لست متأكدًا تمامًا _لماذا_ يكسر هذا Lightbox.

---

<div class="post-metadata">

### Author: ![gale](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@gale](https://meta.discourse.org/u/gale)
#### Post date: [1 أبريل 2022، 3:27ص UTC](https://meta.discourse.org/t/lightbox-no-longer-working/221834/7 "2022-04-01T03:27:38Z")

</div>

بالنسبة لأي شخص آخر قد يواجه هذه المشكلة، تمكنت من إيجاد حل مؤقت في الوقت الحالي.

طالما أنك _لا_ تجري أي استبدالات لـ innerHtml على أي عناصر تحتوي على صور سيتم عرضها في نافذة منبثقة، فلن تحدث المشكلة. تمكنت من إعادة صياغة بعض التعليمات البرمجية الخاصة بي لمطابقة العناصر بشكل أكثر تحديدًا واستهداف تلك التي _ليست_ روابط href حول الصور فقط.
