کوتاهکردن انواع شناسهها، مسیرهای فایل و نام فایلها در وسط با css 🔗https://joanleon.dev/en/guia-practica-elemento-img/ #️⃣#code 👥@IR_javascript_group 🆔@IR_javascript
Signed _

Channel
@IR_javascript
On this record: Growth · Engagement · What this channel posts · Reactions · Posts · Telegram's recommendations · Cite this entry
488subscribers
-7 since we began measuring on 7 August 2026
Risers and fallers across the register · movement among entries of Under 1,000.
| Telegram ID | -1002028348066 |
|---|---|
| Type | Channel |
| Username | @IR_javascript |
| Created | Between 1 November 2023 and 31 May 2024 — estimated from Telegram’s id allocation, not measured. How this range is calculated. |
| First recorded | 8 August 2026 |
| Last confirmed live | 29 August 2026 |
| Measurements held | 6 |
| Confirmed unchanged | 1 time, most recently 29 August 2026 |
| On Telegram | t.me/IR_javascript |
| Measured (UTC) | Subscribers | Change |
|---|---|---|
| 29 Aug 2026, 16:11 | 488 | -1 |
| 23 Aug 2026, 11:38 | 489 | -4 |
| 15 Aug 2026, 07:18 | 493 | -3 |
| 8 Aug 2026, 04:19 | 496 | no change |
| 7 Aug 2026, 16:26 | 496 | +1 |
| 7 Aug 2026, 13:05 | 495 | first reading |
20 posts held, back to 24 February 2026 — the reader has not yet reached the start of this channel’s public history, so older posts may sit further back, unread. Read across 1 page of Telegram’s post history, 20 posts per page.
Nothing published in the last 30 days. ERR and ER are rolling 30-day measures, so there is nothing to compute — we hold 20 posts for this entry, the most recent from 12 March 2026. An engagement rate over an empty window would be a number about nothing.
Measured directly from 2 videos with a duration reading, out of the posts we hold for this channel — not this channel’s whole posting history, only the sample this register has actually read. An exact reading to the second, taken from the post itself rather than from Telegram’s own rounded chrome, so it carries no ≈ mark.
19 reactions across 3 posts, in 3 distinct kinds. The most used accounts for 68.4% of them.
| Reaction | Count | Share | Share, drawn |
|---|---|---|---|
| ❤ | 13 | 68.4% | |
| 👎 | 5 | 26.3% | |
| 👍 | 1 | 5.26% |
No sentiment is inferred, and none should be read in. This table is ordered by count and by nothing else. Emoji do not carry stable meaning across languages or communities — 🙏 is thanks in one channel and mourning in another — so we publish which ones were pressed and how often, and pass no judgement on what an audience meant by them.
Precision. Telegram publishes reaction counts per emoji and short-forms each one — 4.34K, 1.2M — so any single kind at or above 1,000 reaches us at three significant figures, and only counts below 1,000 are exact. The shares above are ratios of those figures and carry the same error. This is also why the total here can differ slightly from a reaction total printed elsewhere on the page: both are sums of the same rounded parts, taken over samples with different edges.
Coverage. Reactions were read on 4 of the 20 sampled posts in this sample. Summed by Telegram’s own count on each post — not by adding up the per-emoji breakdown above — those same posts carry 19 reactions in total: the kind of figure the paragraph above means by “a reaction total printed elsewhere on the page”.
Measured over the 20 most recent posts we hold, published 24 February 2026 to 12 March 2026, using the newest reading held for each. Telegram Stars are excluded: they are a payment, not a reaction, and they have their own section.
کوتاهکردن انواع شناسهها، مسیرهای فایل و نام فایلها در وسط با css 🔗https://joanleon.dev/en/guia-practica-elemento-img/ #️⃣#code 👥@IR_javascript_group 🆔@IR_javascript
Signed _
تصاویر پاسخگو با srcset و `sizes`# ویژگی `srcset` به شما اجازه میدهد چندین نسخه از یک تصویر تعریف کنید تا مرورگر مناسبترین نسخه را بر اساس شرایط (چگالی صفحه، اندازهٔ viewport) انتخاب کند. <!-- ❌ یک اندازه برای همه --> <img src="hero.jpg" alt="Hero image" /> <!-- ✅ نسخههای مختلف برای چگالیها و اندازههای متفاوت --> <img src="hero-800.jpg" srcset="hero-400.jpg 400w, hero-800.jpg 800w, hero-1600.jpg 1600w" s…
Signed _
فرمتهای مدرن با <picture> فرمتهای مدرن مانند AVIF یا WebP فشردهسازی بسیار بهتری نسبت به JPEG یا PNG ارائه میدهند. المان <picture> به شما اجازه میدهد چندین منبع تعریف کنید و مرورگر اولین فرمتی را که پشتیبانی میکند، بارگذاری میکند. فرمت JPEG XL نیز وعدهٔ بهبود فشردهسازی قابل توجهی میدهد، اما پشتیبانی مرورگر بسیار محدود است: Chrome آن را در سال دو هزار و بیست و دو حذف کرد و تنها بهصورت آزمایشی در Firefox و Sa…
Signed _
ویژگیهای عملکرد: loading`، `decoding و fetchpriority این سه ویژگی بیشترین تأثیر را روی معیارهای عملکرد دارند و متأسفانه اغلب اشتباه پیکربندی میشوند. loading# کنترل میکند که مرورگر چه زمانی تصویر را دانلود کند. <!-- ❌ همه تصاویر را بلافاصله بارگذاری میکند، حتی آنهایی که خارج از نما هستند --> <img src="photo.jpg" alt="Photo" /> <!-- ✅ بارگذاری تصاویر خارج از نما را به تعویق میاندازد --> <img src="photo.jpg" al…
Signed _
شبکههای توزیع محتوا CDN برای تصاویر: راهکار عملی مدیریت دستی همهٔ فرمتها و اندازههای مختلف تصاویر پرهزینه است. شبکههای توزیع محتوا برای تصاویر مانند Cloudinary**، **Imgix یا Cloudflare Images این کار سنگین را خودکار میکنند: آنها بهترین فرمت را برای هر مرورگر از طریق هدر Accept تشخیص میدهند، اندازههای مورد نیاز را بر اساس تقاضا تولید میکنند و تصاویر بهینهشده را از نزدیکترین سرور ارائه میدهند. برای مثال در…
Signed _
ترکیب بهینه برای LCP# برای تصویری که LCP را تعیین میکند، دو بخش مهم وجود دارد: دانلود و رندرینگ. ویژگی fetchpriority="high" اولویت دانلود را بالا میبرد، اما فقط زمانی که پارسر تصویر را در HTML پیدا کند. اگر تصویر دیر در سند ظاهر شود — مثلاً داخل یک کامپوننت، یک کاروسل یا بهعنوان پسزمینه CSS — ممکن است مرورگر آن را دیر کشف کند. استفاده از <link rel="preload"> در <head> این مشکل را حل میکند: دانلود تصویر قبل از …
Signed _
وقتی height: 100% روند چیدمان رو به هم ریخت 🙈 داشتم یه گرید ساده میساختم: یه کانتینر با display: grid، ردیفها با grid-template-rows: repeat(n, auto) و توی یه سلول، یه عنصری بود که براش height: 100% گذاشتم تا «قشنگ کش بیاد». تو کروم همهچیز عالی بود، ولی تو سافاری چیدمان به هم ریخت. ☹️ اولش فکر کردم: «خب، دیگه باگ مرورگره». ولی اگه یه کم عمیقتر بشیم، میبینیم که خبری از ماورا نیست: همهچیز به یه قانون CSS برمیگر…
Signed _
Proxy در JavaScript 👨🏫 Proxy یک واسطه بین کد و شیء است. این ابزار عملیاتهای روی شیء (خواندن، نوشتن، فراخوانی، پیمایش) را رهگیری میکند و به شما اجازه میدهد واکنش به این عملیاتها را تغییر دهید—از طریق مجموعهای از handlerها یا همان تلهها (traps). const p = new Proxy(target, handler); ### چطور کار میکند؟ 1️⃣ ابتدا یک شیء واقعی target میسازید؛ 2️⃣ سپس handler را تعریف میکنید—شیئی با توابع رهگیریکننده ما…
Signed _
اگر در پروژه Nuxt خود به پایگاه داده نیاز دارید (که معمولاً لازم است)، میتوانید خیلی سریع آن را با استفاده از [Nuxt Hub](https://hub.nuxt.com) راهاندازی کنید. این ابزار بر پایه Drizzle ORM کار میکند و از PostgreSQL**، **MySQL و SQLite پشتیبانی میکند. همچنین، کار کردن بهصورت محلی با Nuxt DevTools فوقالعاده راحت است و تجربه توسعه را بسیار ساده میکند. #️⃣#tool 👥@IR_javascript_group 🆔@IR_javascript
Signed _
«چطور میتوان یک آیکون را به فیلد ورودی اضافه کرد بهطوری که تنها وقتی placeholder دیده میشود قابل مشاهده باشد و با وارد کردن متن ناپدید شود؟» آیکون را داخل کانتینر label قرار دهید و سپس از pseudo-class :placeholder-shown روی فیلد ورودی استفاده کنید! 🔗https://codepen.io/alinaki/pen/xxMpgLK?editors=1100 #️⃣#tip 👥@IR_javascript_group 🆔@IR_javascript
❤3
Signed _
متوجه شدیم که فایلهای ignore تنها به .gitignore محدود نمیشوند. تقریباً هر ابزار در اکوسیستم خود نسخهای از این فرمت را دارد و اگرچه اغلب گفته میشود «سینتکس .gitignore پشتیبانی میشود»، جزئیات معمولاً متفاوت است ([https://nesbitt.io/2026/02/12/the-many-flavors-of-ignore-files.html](https://nesbitt.io/2026/02/12/the-many-flavors-of-ignore-files.html)). یک مثال خوب .npmignore است. اگر این فایل وجود نداشته باشد، npm …
Signed _
اگر شما هم به استفاده از pointer-events: none روی عناصر علاقهمند شدهاید — شاید برای جلوگیری از کپی شدن یا بهبود UX — احتمالاً دیباگ کردن این عناصر در DevTools میتواند تبدیل به کابوس شود. خب، چطور عنصری که به رویدادهای ماوس پاسخ نمیدهد را انتخاب کنیم؟ همه چیز ساده است: کلید Shift را نگه داشته و انتخاب کنید. ([راهنما](https://devtoolstips.org/tips/en/select-pointer-events-none-elements/)) این روش در Chrome، Edge …
Signed _
Showing the 12 most recent of 20 posts we hold for @IR_javascript. View and reaction counts are the latest single reading for each post, not a live figure, and a recent post is still accumulating both. A view count marked ≈ was rounded by Telegram before we ever saw it — t.me prints views in full below 1,000 and to three significant figures above, so ≈1,200,000 means somewhere between 1,150,000 and 1,249,999. Unmarked counts are exact. Text is reproduced from the public post preview and truncated for length.
The reverse of the list above, and a different kind of signal. This does not require this channel to have ever been asked about directly — each row below is a channel we DID ask Telegram about, whose Telegram-generated list happened to include this one. A channel can appear here with an empty list above it, because being named by someone else’s query is independent of having been queried itself.
This channel appears in 1 seed channel's Telegram-generated recommendation list in total. Each is Telegram’s list for THAT channel, not this one — see how this is measured.
A live page changes as we take new readings, so a citation should name the measurement it is based on, not just the URL. The line below cites the subscriber count as measured 29 August 2026 — this entry's latest reading, not the date you are reading this.
“جاوااسکریپت | JavaScript” (@IR_javascript), 488 subscribers as measured 29 August 2026. Telegram Register, tgregister.com/channel/IR_javascript.
Full measurement history, CC BY 4.0. Every reading this register holds for this entry, not just the latest one, as a dated, downloadable record: CSV · JSON. Free to use with attribution to tgregister.com. Each file carries its own generation timestamp, which is the figure to cite for exactly when the data was retrieved.