javascript ওয়েবসাইট - আমি কিভাবে আমার ওয়েব পেজ ডান ক্লিক করুন?




11 Answers

আপনি "contextmenu" ইভেন্টের জন্য ইভেন্ট শ্রোতা যোগ করে এবং preventDefault() পদ্ধতি কল করে জাভাস্ক্রিপ্টের সাথে এটি করতে পারেন:

document.addEventListener('contextmenu', event => event.preventDefault());

যে বলেন: এটা করবেন না।

কেন? কারণ এটি বিরক্তিকর ব্যবহারকারীদের ছাড়া অন্য কিছুই অর্জন করে না। এছাড়াও অনেক ব্রাউজারে যেকোনোভাবে ডান ক্লিক (প্রসঙ্গ) মেনু নিষ্ক্রিয় করার অনুমতি দেয় এমন একটি সুরক্ষা বিকল্প রয়েছে।

নিশ্চিত না কেন আপনি চান। এটি যদি আপনার ভুল কোড বা চিত্রগুলিকে সুরক্ষিত করে এমন কিছু ভুল ধারণা থেকে বেরিয়ে আসে তবে আবার চিন্তা করুন: আপনি তা করতে পারবেন না।

যায় নতুন

আমি কি জাভাস্ক্রিপ্ট ব্যবহার না করেই আমার ওয়েব পেইজে ডান ক্লিক করতে পারি? আমি এই জিজ্ঞাসা কারণ অধিকাংশ ব্রাউজার ব্যবহারকারী জাভাস্ক্রিপ্ট নিষ্ক্রিয় করার অনুমতি দেয়।

যদি না হয় তবে কিভাবে আমি ডান ক্লিক নিষ্ক্রিয় করতে জাভাস্ক্রিপ্ট ব্যবহার করব?




আসল প্রশ্নটি হ'ল ডান ক্লিকটি কীভাবে বন্ধ করা যায় তা দেওয়া হয়েছে যা ব্যবহারকারী জাভাস্ক্রিপ্ট নিষ্ক্রিয় করতে পারে : যা নেতিবাচক এবং মন্দ (সুতরাং নেতিবাচক প্রতিক্রিয়া) শব্দ করে - তবে সমস্ত সদৃশগুলি এখানে পুনঃনির্দেশিত করে, যদিও অনুলিপিগুলি কম খারাপ উদ্দেশ্যে জিজ্ঞাসা করছে।

উদাহরণস্বরূপ, HTML5 গেমসের ডান-ক্লিক বোতামটি ব্যবহার করার মতো। এটি উপরের ইনলাইন কোড দিয়ে সম্পন্ন করা যেতে পারে, অথবা কিছুটা নিছক এটির মতো কিছু:

document.addEventListener("contextmenu", function(e){
    e.preventDefault();
}, false);

কিন্তু আপনি যদি একটি গেম তৈরি করেন তবে মনে রাখবেন ডান-ক্লিক বোতামটি contextmenu ইভেন্টটি আগুনে ফেলে - তবে এটি নিয়মিত mousedown এবং mouseup ইভেন্টগুলিকেও প্রস্থান করে। সুতরাং ঘটনাটি কোনটি বাম (যা === 1), মধ্যম (যা === 2), অথবা ডান (যা === 3) ইভেন্টটি ফায়ার করা হচ্ছে তা দেখতে কোন ইভেন্টটি পরীক্ষা করতে হবে।

এখানে jQuery এর একটি উদাহরণ রয়েছে - নোট করুন যে ডান মাউস বোতাম টিপে তিনটি ইভেন্ট গুলি করবে: mousedown event, contextmenu event, এবং mouseup event।

// With jQuery
$(document).on({
    "contextmenu": function(e) {
        console.log("ctx menu button:", e.which); 

        // Stop the context menu
        e.preventDefault();
    },
    "mousedown": function(e) { 
        console.log("normal mouse down:", e.which); 
    },
    "mouseup": function(e) { 
        console.log("normal mouse up:", e.which); 
    }
});

তাই যদি আপনি কোনও গেমটিতে বাম এবং ডান মাউস বোতাম ব্যবহার করেন তবে আপনাকে মাউস হ্যান্ডলারগুলিতে কিছু শর্তযুক্ত লজিক্স করতে হবে।




আপনি যদি একটি jquery ফ্যান, এই ব্যবহার করুন

    $(function() {
        $(this).bind("contextmenu", function(e) {
            e.preventDefault();
        });
    }); 



প্রথম, আপনি একটি ক্লায়েন্ট পার্শ্ব ক্ষমতা ব্যবহার করে এই অর্জন করতে পারবেন না। জাভাস্ক্রিপ্ট রান যেখানে এই।

দ্বিতীয়ত, যদি আপনি আপনার সাইটে কোনও শেষ ব্যবহারকারী কী উপভোগ করতে পারেন তা নিয়ন্ত্রণ করার চেষ্টা করছেন, তবে আপনাকে সেই তথ্যটি কীভাবে প্রদর্শন করবেন তা আবার বিবেচনা করতে হবে। একটি ছবিতে একটি সর্বজনীন url রয়েছে যা ব্রাউজারের প্রয়োজন ছাড়াই HTTP এর মাধ্যমে আনা যেতে পারে।

প্রমাণীকরণ নিয়ন্ত্রণ করতে পারেন যারা সম্পদ কি অ্যাক্সেস আছে।

ইমেজ এ এমবেডেড ওয়াটারমার্কিং চিত্রটি নির্দিষ্ট ব্যক্তির / কোম্পানী থেকে প্রমাণ করতে পারে।

দিনের শেষে, সম্পদ ব্যবস্থাপনা সত্যিই ব্যবহারকারী / অতিথি ব্যবস্থাপনা।

ইন্টারনেটের প্রথম নিয়ম, যদি আপনি এটি নিতে না চান, তাহলে এটি প্রকাশ করবেন না!

ইন্টারনেটের দ্বিতীয় নিয়ম, যদি আপনি এটি না চান, ইন্টারনেটে রাখুন না!




আপনার লক্ষ্য ব্যবহারকারীদেরকে কেবলমাত্র আপনার চিত্রগুলি সংরক্ষণ করার অনুমতি দেওয়ার অনুমতি দিলে, আপনি ক্লিক করা লক্ষ্যটি একটি চিত্র হিসাবেও পরীক্ষা করতে পারেন, শুধুমাত্র সেই ক্ষেত্রে ডান ক্লিকটি নিষ্ক্রিয় করুন। তাই ডান ক্লিক অন্যান্য উদ্দেশ্যে জন্য ব্যবহার করা যেতে পারে। উপরের কোড থেকে নেওয়া হয়েছে:

document.addEventListener("contextmenu", function(e){
    if (e.target.nodeName === "IMG") {
        e.preventDefault();
    }
}, false);

এটি কেবল আপনার ছবিগুলি সংরক্ষণ করার সবচেয়ে সহজ উপায় গ্রহণ করা, তবে এটি এখনও করা যেতে পারে।




এটি নীচের মত না (এটিও ফায়ারফক্সে কাজ করে):

$(document).on("contextmenu",function(e){

     if( e.button == 2 ) {
         e.preventDefault();
          callYourownFucntionOrCodeHere();
     }
return true;
});



এই কোডটিকে আপনার পৃষ্ঠার <head> ট্যাগে রাখুন।

<script type="text/javascript"> 
function disableselect(e){  
return false  
}  

function reEnable(){  
return true  
}  

//if IE4+  
document.onselectstart=new Function ("return false")  
document.oncontextmenu=new Function ("return false")  
//if NS6  
if (window.sidebar){  
document.onmousedown=disableselect  
document.onclick=reEnable  
}
</script>

এটি আপনার সমগ্র ওয়েব পৃষ্ঠায় ডান ক্লিকটি নিষ্ক্রিয় করবে, কিন্তু শুধুমাত্র যখন জাভাস্ক্রিপ্ট সক্ষম হবে।




    <script>
        window.oncontextmenu = function () {
            console.log("Right Click Disabled");
            return false;
        }
    </script>



আপনার ওয়েব পৃষ্ঠায় ডান ক্লিক নিষ্ক্রিয় করা সহজ। জাভাস্ক্রিপ্ট কোডের মাত্র কয়েকটি লাইন রয়েছে যা এই কাজটি করবে। নীচে জাভাস্ক্রিপ্ট কোড হয়:

$("html").on("contextmenu",function(e){
   return false;
});

উপরের কোডে, আমি ট্যাগটি নির্বাচন করেছি। কোডের যে তিনটি লাইন যোগ করার পরে, এটি আপনার ওয়েব পৃষ্ঠায় ডান ক্লিক নিষ্ক্রিয় করবে।

উত্স: ডান ক্লিক করুন, অনুলিপি করুন, jQuery ব্যবহার করে ওয়েব পেজ কাটা




আমি জানি আমি দেরিতে আছি, কিন্তু আমি যে উত্তর দিতে যাচ্ছি তার জন্য কিছু ধারনা এবং ব্যাখ্যা তৈরি করতে চাই।

আমি ডান ক্লিক নিষ্ক্রিয় করতে পারেন

আমি জাভাস্ক্রিপ্ট ব্যবহার ছাড়া আমার ওয়েব পেজ ডান ক্লিক করতে পারেন?

হ্যাঁ, জাভাস্ক্রিপ্ট ব্যবহার করে আপনি যে কোনও ইভেন্টটি অক্ষম করতে পারেন এবং আপনি এটি শুধুমাত্র javaScript দ্বারা করতে পারেন। কিভাবে, আপনি প্রয়োজন হয়:

  1. একটি কাজ হার্ডওয়্যার

  2. একটি ওয়েবসাইট বা কোথাও থেকে আপনি কীকোড সম্পর্কে শিখতে পারেন। কারণ আপনি তাদের প্রয়োজন হবে।

এখন বলুন আপনি এন্টার কী চাপটি ব্লক করতে চান কোডটি এখানে রয়েছে:

function prevententer () {
 if(event.keyCode == 13) {
  return false;
 }
}

ডান ক্লিকের জন্য এটি ব্যবহার করুন:

event.button == 2

event.keyCode জায়গায়। এবং আপনি এটি ব্লক করব।

আমি এই প্রশ্ন করতে চাই কারণ অধিকাংশ ব্রাউজার ব্যবহারকারীকে জাভাস্ক্রিপ্ট দ্বারা নিষ্ক্রিয় করতে দেয়।

আপনি সঠিক, ব্রাউজার আপনাকে JavaScript ব্যবহার করার অনুমতি দেয় এবং জাভাস্ক্রিপ্ট আপনার জন্য পুরো কাজ করে। আপনাকে কিছু সেটআপ করার দরকার নেই, কেবলমাত্র স্ক্রিপ্টের বৈশিষ্ট্যটি মাথায় লাগবে।

কেন আপনি এটি নিষ্ক্রিয় করা উচিত নয়?

এর প্রধান এবং দ্রুত উত্তর হবে, ব্যবহারকারীরা এটি পছন্দ করবে না । সবার জন্য স্বাধীনতা দরকার, কেউই বলবেন না যে কেউই অবরুদ্ধ বা নিষ্ক্রিয় হতে চায় না, কয়েক মিনিট আগে আমি এমন একটি সাইট ছিলাম, যা আমাকে ডান ক্লিক থেকে অবরুদ্ধ করেছিল এবং আমি অনুভব করলাম কেন? আপনি আপনার সোর্স কোড সুরক্ষিত করতে হবে? তারপর এখানে ctrl+shift+J আমি Console খুলেছি এবং এখন আমি HTML-code ট্যাবে যেতে পারি। এগিয়ে যান এবং আমাকে থামাতে। এটি আপনার অ্যাপ্লিকেশানে সুরক্ষা স্তর যোগ করবে না।

রাইট ক্লিকে ব্যবহারকারীর বেশ কয়েকটি মেনু রয়েছে, যেমন অনুলিপি, পেস্ট, 'টেক্সট' (ক্রোমে) এর জন্য Google এবং আরও অনেক কিছু সন্ধান করুন। সুতরাং ব্যবহারকারীর কীবোর্ড শর্টকাটগুলি আলাদা করার পরিবর্তে অ্যাক্সেসের সহজতা পেতে চাই। যে কেউ এখনও প্রেক্ষাপটে অনুলিপি করতে পারেন, ছবিটি সংরক্ষণ করতে বা যা চায় তা করতে পারেন।

ব্রাউজারগুলি মাউস নেভিগেশান ব্যবহার করে: অপেরা হিসাবে কিছু ব্রাউজার মাউস নেভিগেশান ব্যবহার করে , তাই যদি আপনি এটি নিষ্ক্রিয় করেন তবে ব্যবহারকারী অবশ্যই আপনার ব্যবহারকারীর ইন্টারফেস এবং স্ক্রিপ্টগুলিকে ঘৃণা করবে।

সুতরাং মৌলিক ছিল, আমি সোর্স কোডটি সংরক্ষণ করার বিষয়ে আরও কিছু লিখতে যাচ্ছি কিন্তু, আপনার প্রশ্নের উত্তর দিতে দিন।

কীকোডগুলি উল্লেখ করুন:

কী এবং মাউস বোতাম কোড:

http://www.w3schools.com/jsref/event_button.asp

https://developer.mozilla.org/en-US/docs/Web/API/event.button (ব্যবহারকারীদের দ্বারাও প্রশংসা করা হবে)।

কেন ডান ক্লিক নিষ্ক্রিয় না:

http://www.sitepoint.com/dont-disable-right-click/




javascript:

document.getElementsByTagName("html")[0].setAttribute("oncontextmenu", "return false"); 



Related

javascript

Tags

javascript