سلام دوستان
من 5 تا li بصورت آبجکت دارم که میخام با ادددایونت لی... براشون رویداد بزارم.
یعنی رو هرکدومشون کلیک با استفاده از کیبورد this متنشون رو بگیرم
let clickk=()=>{
alert('click');
};
let li=document.getElementsByClassName('h-ch-t');
li.addEventListener('click',clickk);
ولی ارور Uncaught TypeError: li.addEventListener is not a function
میده
این کارو که تو html براشون رویداد مشخص کنیم میشه انجام داد و لی من دوست ندارم بصورت دستی برای همشون اینطوری کنم
یادم میاد تو jq مشابه کد بالارو میتونستم انجام بدم .شاید تو jq متغییره بهمون آبجکت پس نمیداد فقط یه مقدار میداد
حالا من امیدوارم منظورم رو رسونده باشم
خواهش میکنم
نه یک بار میاد همه ی li هایی که اون کلاس رو دارند میگیره و با foreach برای تک تکشون event ها رو ست میکنه . پس فقط به تعداد اون liها اجرا میشه دستور داخل foreach
با کد زیر میتونی این کارو انجام بدی
<!DOCTYPE html>
<html>
<body>
<ul>
<li class="h-ch-t">تست 1</li>
<li class="h-ch-t">تست 2</li>
<li class="h-ch-t">تست 3</li>
<li class="h-ch-t">تست 4</li>
</ul>
<script>
let clickk=()=>{
alert('click');
};
[...document.querySelectorAll('.h-ch-t')].forEach(function(item) {
item.addEventListener('click', clickk);
});
</script>
</body>
</html>
@miladk313
سپاس
من تاحال با فروایچ کارنکرده بودم جالبه
ببخشید این کد یبار اجرا میشه یا دائم د حال اجراست تا وقتی که کلیک میشه؟
خواهش میکنم
نه یک بار میاد همه ی li هایی که اون کلاس رو دارند میگیره و با foreach برای تک تکشون event ها رو ست میکنه . پس فقط به تعداد اون liها اجرا میشه دستور داخل foreach
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟