Ali Sadeghi
4 سال پیش توسط Ali Sadeghi مطرح شد
10 پاسخ

ایونت جاوا اسکریپتی

سلام به همه دوستان راکتی .
من نیاز به یک ایونتی توی جاوا اسکریپت میگردم مثل onClick . ولی میخوام مادامی که دستم روی اون المنت مورد نظر هست هی اون ایونت صدا زده بشه .
( مثلا من میخوام وقتی روی یک دکمه کلیک میکنم تا وقتی دستم رو از روی دکمه کلیک برنداشتم هی یک عدد به یک متغیر اضافه بشه )
امیدوارم منظورمو خوب فهمونده باشم . سپاس


ثبت پرسش جدید
میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 4 سال پیش مطرح شد
1

چیزی که شما مدنظر داری رو با شمارشگر یک صدم ثانیه ای کدنویسی کردم، می تونید زمانش رو خودتون تغییر بدین:

<!doctype html>
<html lang="en" dir="rtl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>برنامه جاوااسکریپتی</title>
    <style>
    </style>
</head>
<body>
    <div>
        <button onMouseDown="fn1()" onMouseUp="fn2()">موس رو نگهش دار</button>
        <p id='output'>0</p>            
    </div>

    <script>
        let count = 0;
        let downTime = 0;

        function fn1() {
            downTime = setInterval(function(){ 
                count++;
                document.querySelector('#output').textContent = count;
            }, 100);
        }
        function fn2() {
            clearInterval(downTime);
        }
    </script>
</body>
</html>

آرین حسینی
تخصص : Solidity Developer. Blockchai...
@arian 4 سال پیش آپدیت شد
0

@pranceirani2000
از onmousedown استفاده کنید ، فکر کنم کار کنه


Ali Sadeghi
تخصص : Javascript Developer
@alimsadeghi1 4 سال پیش آپدیت شد
0

@arian
از این ایونت استفاده کردم ولی کار نکرد (فانکشن فقط یک بار صدا زده شد)

<div>
<button onMouseDown ={() => changeCount(count - ۱)} className='btn'>Minus</button>
<label className='num-box'>{count}</label>
<button onMouseDown={() => changeCount(count + ۱)} className='btn'>Add</button>
</div>

سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 4 سال پیش مطرح شد
0

سلام @pranceirani2000
خودم پاسخ دادن با لینکو زیاد نمیپسندم :) اما شاید این به دردتون بخوره .
https://stackoverflow.com/questions/18584389/listen-to-mouse-hold-event-on-website


آرین حسینی
تخصص : Solidity Developer. Blockchai...
@arian 4 سال پیش مطرح شد
0

احتمالا این لینک کمکتون کنه...


Ali Sadeghi
تخصص : Javascript Developer
@alimsadeghi1 4 سال پیش مطرح شد
0

@SobhanDadkhah
خیلی ممنون آقا سبحان ولی این لینکی که معرفی کردید برای جی کوئری هست و من چون پروژم ری اکتی هست نمیخوام از جی کوئری استفاده کنم


آرین حسینی
تخصص : Solidity Developer. Blockchai...
@arian 4 سال پیش مطرح شد
3

@SobhanDadkhah حق با شماست ، ولی وقتی کسی به صورت کامل اومده و توضیح داده ، برای چی ما بیایم و دوباره اون رو بنویسیم...


Ali Sadeghi
تخصص : Javascript Developer
@alimsadeghi1 4 سال پیش مطرح شد
0
        <div>
            <button onMouseDown ={() => changeCount(count - 1)} className='btn'>Minus</button>
            <label className='num-box'>{count}</label>
            <button onMouseEnter={() => changeCount(count + 1)} className='btn'>Add</button>
        </div>

فکر کنم باید با یه تیریک این رو درستش کنم . مثلا از لوپ و flag استفاده کنم


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 4 سال پیش مطرح شد
1

چیزی که شما مدنظر داری رو با شمارشگر یک صدم ثانیه ای کدنویسی کردم، می تونید زمانش رو خودتون تغییر بدین:

<!doctype html>
<html lang="en" dir="rtl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>برنامه جاوااسکریپتی</title>
    <style>
    </style>
</head>
<body>
    <div>
        <button onMouseDown="fn1()" onMouseUp="fn2()">موس رو نگهش دار</button>
        <p id='output'>0</p>            
    </div>

    <script>
        let count = 0;
        let downTime = 0;

        function fn1() {
            downTime = setInterval(function(){ 
                count++;
                document.querySelector('#output').textContent = count;
            }, 100);
        }
        function fn2() {
            clearInterval(downTime);
        }
    </script>
</body>
</html>

Ali Sadeghi
تخصص : Javascript Developer
@alimsadeghi1 4 سال پیش مطرح شد
1

@milad
خیلی ممنون میلاد جان . مشکل رو حل کردی 🌹🌹🌹


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 4 سال پیش مطرح شد
0

خواهش میکنم، زنده باشید، چه خوب :)
دکمه ی تشکر رو بزنید، خودش تشکر محسوب میشه 🌹


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

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