JQuery এর সাথে কীপ্রেসকে "মুছুন" ক্যাপচার করছে


118

কীপ্রেস ইভেন্ট হ্যান্ডলারের জন্য jQuery ডকুমেন্টেশন থেকে উদাহরণ কোডটি ব্যবহার করার সময়, আমি Deleteকীটি ক্যাপচার করতে পারছি না । নিচে স্নিপেট লগ ইন করার যাচ্ছে 0যখন Deleteচাবি ফায়ারফক্সে টেপা হলে:

$(document).keypress(function(e) {
    console.log(e.which);       
});

দেখে মনে হচ্ছে Deleteকীটি ক্যাপচার করার উপায় আছে তবে এটি একটি দ্ব্যর্থক শব্দ যার ফলে গুগল এটির পক্ষে খুব বেশি সহায়ক হতে পারে না।

উত্তর:


202

আপনার keypressইভেন্টটি ব্যবহার করা উচিত নয় , keyupবা ইভেন্টটি হ'ল keydownকারণ keypressইভেন্টটি বাস্তব (মুদ্রণযোগ্য) অক্ষরের জন্য। keydownনিম্ন স্তরে পরিচালনা করা হয় যাতে এটি সমস্ত নন-প্রিন্টিং কীগুলি deleteএবং এর মতো ক্যাপচার করবে enter


keyupকাজ আরও ভাল করতে হবে।
লোকালহোস্ট

2
@atilkan না, ব্যবহারকারী প্রতিক্রিয়া আশা করে keydown, না keyup। সমস্ত পাঠ্য সম্পাদক সম্পাদনাগুলি যখন কীটি চাপানো হয় তখন তা সঞ্চালিত হয়, যখন প্রকাশ হয় না।
ফিলিপ লেবার্ট

1
@ ফিলিপলেলিবার্ট আমার ক্ষেত্রে প্রোগ্রামটি সর্বশেষ চাপানো চরটি ধরতে পারে না।
লোকালহোস্ট

82
$('html').keyup(function(e){
    if(e.keyCode == 46) {
        alert('Delete key released');
    }
});

উত্স: জাভাস্ক্রিপ্ট চর কোডগুলি www.cambiaresearch.com থেকে কোড কোডগুলি


18
এটা হওয়া উচিত alert('Delete Key Released')
ওয়ালধেঞ্জ

যদি কেউ কিডআপের পরিবর্তে কীপ্রেস ব্যবহার করে টডের পরামর্শ দিয়ে থাকে তবে আপনি কী কোড কোড == 46 এর বিপরীতে পাবেন। কী (বিন্দু) তবে এটি কীআপের সাথে ভাল কাজ করে। ধন্যবাদ
মুবাশার

34

জাভাস্ক্রিপ্ট কীকোডস

  • e.keyCode == 8 এর জন্যbackspace
  • e.keyCode == 46 এর জন্য forward backspaceবা deleteপিসিতে বোতাম

এই বিশদটি ব্যতীত কলিন ও টডের উত্তর কাজ করছে।


4
এটি e.keyCode হওয়া উচিত এবং e.KeyCode নয়
জেরোম

16

ইভেন্ট.কি === "মুছুন"

আরও সাম্প্রতিক এবং অনেক ক্লিনার: ব্যবহার event.key। আর যথেচ্ছ নম্বর কোড নেই!

দ্রষ্টব্য: পুরানো বৈশিষ্ট্যগুলি ( .keyCodeএবং .which) হ্রাস করা হয়েছে।

document.addEventListener('keydown', function(event) {
    const key = event.key; // const {key} = event; ES6+
    if (key === "Delete") {
        // Do things
    }
});

মজিলা ডক্স

সমর্থিত ব্রাউজারগুলি

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.