راکت

تشخیص کلیک شدن روی item های یک متغیر با استفاده از if

2 پاسخ

سلام روز همگی بخیر.
من داخل js یک let داشتم که با querySelectorAll مقدار دهیش کرده بودم.
بعد میخواستم بدونم چجوری بدون نوشتن یک forEach و با استفاده نوشتن یک if بفهمم که دقیقا مثلا روی کدوم یک item های این متغیر کلیک شده است. که بعد بگم روی هر کدوم از item هایش کلیک شد داخل if یک اتقاق بی افتد.

ثبت پرسش جدید

پاسخ‌ها

2
مهدی ایلخانی نسب
مهدی ایلخانی نسب
@MehdiIlkhaniNasab

تخصص: برنامه نویس وب

سلام .
چون مقداری رو که داخل متغیر ذخیره کردید به صورت یه ارایه ذخیره میشه و شامل فرزند هم هست و اگر بخواید متوجه بشید که روی کدوم ایتم کلیک شده بنظرم راه منطقیش استفاده از حلقه forEach هست مثل روش زیر

let listArray = document.querySelectorAll('#list')

listArray.forEach(function(item){
    item.addEventListener('click',showDetails)
})
function showDetails(event){
    console.log(event.target);
}

حالا دیگه داخل اون فانکشن میتونی چیزی که مد نظرته انجام بدی مثلا بگی وقتی روی ایتم دوم کلیک شد اگر متن داخلش برابر با فلان چیز بود مقدار true رو چاپ کنه یا هر چیز دیگه ای

سینا شاه‌اویسی
سینا شاه‌اویسی
@sinashahoveisi

تخصص: برنامه نویس

سلام با استفاده از کد زیر میتونید تشخیص بدید

window.onclick = e => {
    console.log(e.target);  // to get the element
    console.log(e.target.tagName);  // to get the element tag name alone
} 

میتونید بجای windows ، المنت پدر اون آیتم ها رو بگیرید و متد onClick رو روی اون قرار بدید

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام