2013-06-18 9 views
7

राइट क्लिक मीनू में हाइपरलिंक पर के लिए नया टैब विकल्प में ओपन, मैं कैसे निकाल सकते हैं या नया टैब में ओपन और ओपन नई विंडो विकल्प में छिपाने?कैसे निष्क्रिय करने के लिए या छिपाने हाइपरलिंक

उदाहरण

के लिए

<a href="#" onclick="asd">foo</a> 
+4

आपको लगता है कि नहीं निकाल सकते। अपने मालिक/ग्राहक को यह बताने का आनंद लें। – epascarello

+0

आपने पहले से क्या प्रयास किया? –

+4

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

उत्तर

0

आप निम्नलिखित कोड का उपयोग कर ऐसा कर सकते हैं।

<script language="javascript"> 
$("a").click(function(event) 
{ 
    if(event.button==2) 
    { 
    return false;  
    } 
}); 
</script> 
+0

इवेंट.बटन == 2 यहां आपका क्या मतलब है? क्या आप कृपया समझा सकते हैं कि मैं एक लिंक को नए टैब/विंडो में खोलने से रोकने की कोशिश कर रहा हूं – Vikram

+0

बटन 2 माउस के दूसरे क्लिक के लिए खड़ा है। –

+0

विचार के लिए धन्यवाद, लेकिन यह होना चाहिए (event.which == 2) event.which == 1 बाएं क्लिक event.which == 2 मध्यम रोलर ईवेंट.विच == 3 राइट क्लिक करें .. मुझे लगता है कि jquery –

1

आप सादे HTML के बजाय जावास्क्रिप्ट लिंक का उपयोग कर सकते हैं। बस href = "जावास्क्रिप्ट: शून्य (0)" करें और पृष्ठ को रीडायरेक्ट करने के लिए क्लिक ईवेंट को संभाल लें। यह किसी अन्य टैब में खोलने का विकल्प नहीं हटाएगा लेकिन यह सुनिश्चित करेगा कि पृष्ठ वास्तव में प्रयास किए जाने पर खुलता नहीं है।

इसके अलावा एक HTML टैग के बजाय, आप इसके बजाय एक और टैग का उपयोग कर सकते हैं जैसे इसे कर्सर: पॉइंटर सीएसएस प्रॉपर्टी और jquery ऑनक्लिक इसे एक लिंक की तरह काम करने के लिए क्लिक करें। यह संदर्भ मेनू से "दूसरे टैब में खोलें" विकल्प को पूरी तरह से हटा देगा।

22

यह सुनिश्चित नहीं है कि आप ऐसा क्यों करना चाहते हैं लेकिन href को data-href विशेषता पर ले जाकर इसे किया जा सकता है, फिर href हटाएं और एक क्लिक हैंडलर जोड़ें। ऑनक्लिक data-href पढ़ेगा और रीडायरेक्ट करेगा।

Demo

var links = document.getElementsByTagName("a"); 

for(var i=0; i<links.length; i++){ 
    links[i].setAttribute("data-href", links[i].getAttribute("href")); 
    links[i].removeAttribute("href"); 
    links[i].onclick = function(){ 
     window.location = this.getAttribute("data-href"); 
    }; 
} 

राइट क्लिक मीनू पता चलता है:

enter image description here

+1

से दायाँ क्लिक के लिए event.button == 2 यह सबसे साफ विकल्प है, मैं श्री कोड – box86rowh

+0

के साथ सहमत हूं, मैंने बस इसके लिए गुगल किया। कारण मैं यह करना चाहता हूं कि मेरे पास लिंक सेट हैं जो एक मोडल में एजेक्स एक्शन ट्रिगर करते हैं, और यदि उपयोगकर्ता उन्हें एक नए टैब में खुलता है तो यह इसे तोड़ देता है (क्योंकि यह मोडल की बजाय एक नई विंडो में है और इसमें आवश्यक सभी संदर्भ नहीं हैं)। Href बंद करना सबसे अच्छा समाधान है, मुझे लगता है: मुझे कुछ अतिरिक्त स्टाइल जोड़ने की आवश्यकता होगी ताकि उन्हें फिर से लिंक की तरह दिख सकें। –

संबंधित मुद्दे