वेबसाइटें टेक्स्ट का चयन कैसे रोकती हैं और मैं इसे कैसे अनब्लॉक करता हूँ?


74

एक वेबसाइट ( उदाहरण ) है जो किसी भी तरह से टेक्स्ट को सेलेक्ट करती है। इसके अलावा ब्लॉक यह Ctrl+ A, सब कुछ का चयन करने के पॉपअप मेनू में भी कोई "कॉपी"।

मैंने क्या कोशिश की है:

कुछ साइट्स चयन को अवरुद्ध करने के लिए जावास्क्रिप्ट का उपयोग करती हैं। इसलिए मैंने फ़ायरफ़ॉक्स में नो-स्क्रिप्ट ऐडऑन में सभी जावास्क्रिप्ट स्रोतों को अक्षम कर दिया। मैंने Google Chrome में स्क्रिप्ट सुरक्षित एडऑन के साथ एक ही साइट की कोशिश की। सुनिश्चित करें कि सब कुछ अवरुद्ध है, फिर भी पाठ का चयन नहीं कर सकते। माउसपॉइंट एक तीर बना रहता है और पूरी साइट पर टेक्स्ट कर्सर भी नहीं होता है।

about:configफ़ायरफ़ॉक्स में जावास्क्रिप्ट को पूरी तरह से अक्षम करने के लिए उपयोग किया जाता है। फिर भी कोई असर नहीं।

मैंने पढ़ा कि कुछ साइट शैली प्रदर्शन के साथ DIV का उपयोग करती हैं: इसलिए मैंने साइट की शैलियों की जांच करने के लिए निरीक्षण का उपयोग किया। पूरी वेबसाइट पर "ब्लॉक" का कोई उल्लेख नहीं है, एम्बेडेड सीएसएस में नहीं है और न ही वस्तु शैली = -सेंटेज में।

पाठ एक छवि या फ़्लैश या कुछ HTML5 कैनवास ect नहीं है। सब कुछ DIV और P टैग्स के भीतर है, लेकिन ऐसा कोई स्टाइल नहीं पाया गया जो टेक्स्ट चयन को अवरुद्ध कर सके।

वेबसाइट अभी भी पाठ के किसी भी चयन को कैसे रोक सकती है? यह उल्लेख करने के लिए नहीं कि ब्राउज़र इस तरह के व्यवहार का समर्थन क्यों करते हैं। मैं सिर्फ एक चयनित शब्द या वाक्य का उपयोग करना चाहता हूं और सही माउस क्लिक का उपयोग करके इसके लिए Google खोजना चाहता हूं। जब कोई वेबसाइट इस तरह की बातें करती है और मुझे हाथ से गूगल में तकनीकी शब्द और नाम लिखने के लिए मजबूर करती है तो यह बहुत कष्टप्रद है। यह मेरे वर्कफ़्लो को परेशान करता है।


8
"वेबसाइट टेक्स्ट की मार्किंग कैसे रोकते हैं" - वे सेट style.userSelectकरते हैं none

2
@ Xen2050 अधिकतर मैं पाठ की नकल के बारे में परवाह नहीं करता। मुझे बस वाक्यांशों और शब्दों को चिह्नित करने और माउस के एक क्लिक के साथ Google पर खोजने की क्षमता पसंद है (डबलक्लिक शब्द, राइटक्लिक करें "Google खोजें ...")। मैं स्रोत में जा सकता हूं (यदि यह बिल्कुल साफ स्रोत है) और शब्द के लिए स्कैन करें, इसे कॉपी करें, Google में पेस्ट करें लेकिन अच्छी तरह से ... जैसा कि यह सिर्फ एक झुंझलाहट है। कोई 1 जो आपकी वेबसाइट के टेक्स्ट को कॉपी करना चाहता है, वह इसे किसी भी तरह से कर सकता है, लेकिन कोई ऐसा व्यक्ति जो सिर्फ एक आरामदायक वर्कफ़्लो चाहता है, बाधा उत्पन्न करता है।
उपयोगकर्ता 6329530

122
क्या हम सिर्फ एक पल ले सकते हैं और सभी भ्रमित वेब डेवलपर्स के लिए सहानुभूति रख सकते हैं जो सोचते हैं कि यह एक अच्छा सुरक्षा उपाय है?
MCMastery

3
मुझे नहीं पता कि यह प्रथा अब और कैसे प्रचलित है, लेकिन मुझे याद है कि पाठ की नकल आदि को रोकने के लिए पूरे पृष्ठ को कवर करने के लिए एक एकल-पिक्सेल छवि के कुछ उदाहरणों को चलाना आदि है। और मेरे माउस पॉइंटर को चमचमाते इंद्रधनुष में बदलना- हर जगह चमकता पाठ के साथ-साथ गेंडा-सितारे ...
RIanGillis

27
@MCMastery या इससे भी बदतर, जो डेवलपर्स जानते हैं कि यह भयानक है, लेकिन कहा जाता है कि उन्हें इसे वैसे भी करना होगा। ज्यादातर वे सामग्री चोरी करने वाले लोगों के बारे में चिंतित हैं। फिर आपको एसओ जैसी साइटें मिल रही हैं, जो हर समय खराब / चोरी हो रही हैं ... लेकिन व्यावसायिक रूप से व्यवहार्य हैं। आपके उपयोगकर्ताबेस को अलग करने की बारी व्यापार के लिए खराब है। किसने सोचा होगा?!
corsiKa

जवाबों:


81

https://www.angst-panik-hilfe.de/angst-panik.css शो:

body{-webkit-user-select:none;-moz-user-select:-moz-none;
-ms-user-select:none;user-select:none}

इसलिए, यह प्रभाव पूरे बॉडी टैग पर लागू होता है।

इस सीएसएस पर प्रलेखन: मोज़िला डेवलपर साइट: उपयोगकर्ता-चयन

डेवलपर टूल ( F12फ़ायरफ़ॉक्स या क्रोम में प्रेस) में शैली को हटाकर शायद आप इसे ओवरराइड कर सकते हैं - आप एक जावास्क्रिप्ट एप्लेट बनाने में भी सक्षम हो सकते हैं, जो इसे सेट करने के लिए समय का निवेश करने के बाद, उस शैली को कम त्वरित प्रयास से हटा सकते हैं यदि आप कई बार साइट पर जाने की योजना बनाते हैं तो आपका हिस्सा (जो एक समय बचाने वाला हो सकता है)।

मैं भी इस नोट को जोड़ना चाहूंगा: यह कम से कम कुछ प्रभाव रखने का एकमात्र तरीका नहीं हो सकता है। एक अन्य संभावित तरीका एक अदृश्य DIVकवर हो सकता DIVहै जिसमें पाठ है। इस तरह, माउस कर्सर I- बीम (टेक्स्ट कर्सर) में नहीं बदलेगा क्योंकि कर्सर शीर्ष-सबसे की सामग्री पर आधारित होगा DIV। ( Ctrl- Aशायद उस पाठ को कवर करेगा, हालांकि।)

जब कोई वेबसाइट इस तरह की बातें करती है और मुझे हाथ से गूगल में तकनीकी शब्द और नाम लिखने के लिए मजबूर करती है तो यह बहुत कष्टप्रद है। यह मेरे वर्कफ़्लो को परेशान करता है।

तथास्तु! इसे देखने के बाद, मैं इस तरह के एक CSS शैली के अस्तित्व पर निराश हूं जो प्रमुख ब्राउज़रों द्वारा कार्यान्वित किया जा रहा है। इस तरह की चीजें बहुत कष्टप्रद हैं, वास्तव में!


61
user-selectसीएसएस शैली बहुत सहायक होता है जब जिम्मेदारी से लागू किया है। उदाहरण के लिए, यदि आप (विशेष रूप से पुराने) उपयोगकर्ताओं को लेबल पाठ के पास बटन पर क्लिक करने वाले टचस्क्रीन पर चाहते हैं, तो आप नहीं चाहते कि वे बटन पर क्लिक करने के बजाय लेबल पाठ को चिह्नित करें।
फ़िहाग

14
आपका क्या मतलब है "डिफ़ॉल्ट रूप से"? यह सेटिंग केवल तभी सक्षम होती है जब वेबसाइट विशेष रूप से इसे सक्षम करती है, जो मुझे "डिफ़ॉल्ट रूप से" की तरह नहीं लगती है। हमेशा ऐसे फीचर्स होंगे जिनका बुरा वेब डिज़ाइनर्स द्वारा गलत इस्तेमाल किया जा सकता है, आप इसे रोकने के लिए बहुत कुछ नहीं कर सकते हैं, जो बिना उन लोगों को नकारात्मक रूप से प्रभावित किए हुए हैं जिनके पास उन सुविधाओं का उपयोग करने का एक वैध कारण है ...
सीन बर्टन

11
@ सीन फिर से, यदि ब्राउज़र वेबपृष्ठों को देखने वाले व्यक्ति की सेवा करने के लिए मौजूद है, तो इसका काम वेब सर्वर द्वारा भेजे जाने वाले उपयोगकर्ता को यह बताने के लिए प्रतिक्रिया देना है। यदि उपयोगकर्ता इसे पृष्ठ को म्यूट करने या पॉप-अप को हटाने या पाठ को कॉपी करने के लिए कहता है, तो ब्राउज़र को ऐसा करना चाहिए।
Acccumulation

8
कोई भी ब्राउज़र उपयोगकर्ता अपने ब्राउज़र को कॉन्फ़िगर करने के लिए परेशान नहीं होने वाला है, ताकि वह इस तरह की सुविधा को स्पष्ट रूप से सक्षम कर सके, अगर यह डिफ़ॉल्ट रूप से सक्षम नहीं है, तो यह अनिवार्य रूप से बेकार है और साथ ही इसे बिल्कुल भी लागू नहीं किया जा सकता है। और अगर आप यह सुझाव दे रहे हैं कि उपयोगकर्ता द्वारा हर सुविधा को स्पष्ट रूप से सक्षम किया जाना चाहिए, तो आप कहां रेखा खींचते हैं? वेबसाइट प्रदर्शित करने से पहले उपयोगकर्ता को "चित्र" सुविधा सक्षम करनी चाहिए? सभी ब्राउज़रों को मूल रूप से डिफ़ॉल्ट रूप से लिंक्स होना चाहिए जब तक कि उपयोगकर्ता उन सभी सुविधाओं को सक्षम नहीं करता जो वे चाहते हैं?
सीन बर्टन

13
@Accumulation उपयोगकर्ता का चयन: वेबपेज की शैली को बनाए रखने के लिए सभी जगह किसी भी सुविधा का उपयोग नहीं किया जाता है, उदाहरण के लिए, ड्रॉप डाउन सूचियों में से एक विकल्प का चयन करते समय एक बदसूरत नीली पृष्ठभूमि को रोकना। आप अभी गौर नहीं करते क्योंकि यह सही ढंग से लागू किया जा रहा है। यहां समस्या यह है कि इसे उपयोगकर्ता के लिए प्रतिबंधात्मक तरीके से लागू किया गया है, और एक ब्राउज़र में दोनों के बीच अंतर करने का कोई तरीका नहीं है। इसलिए, देव के :) को दोष दें
शॉन टी

11

जैसा कि पहले ही कहा जा चुका है, user-select: noneपृष्ठ के सीएसएस में सेटिंग वह है जो पृष्ठ पर पाठ का चयन अक्षम करता है। उस पाठ चयन ब्लॉक को हटाने का सबसे आसान तरीका उपयोगकर्ता स्क्रिप्ट के माध्यम से होगा जैसे कि सेटिंग ओवरराइड करती है:

// ==UserScript==
// @name         Force Select
// @version      1.0
// @description  Stop sites from disabling selection of text
// @author       You
// @match        *://*/*
// @grant        none
// ==/UserScript==

(function() {
  'use strict';

  let style = document.createElement('style');
  style.innerHTML = '*{ user-select: auto !important; }';

  document.body.appendChild(style);
})();

नोट: यदि सक्षम हो तो यह हर पृष्ठ पर लागू होगा, जो सभी स्थितियों में वांछनीय नहीं हो सकता है।

स्क्रिप्ट स्थापित किया जा सकता है और आसानी से जैसे जब कोई उपयोगकर्ता स्क्रिप्ट प्रबंधक के साथ / बंद टॉगल Violentmonkey , Tampermonkey , या Greasemonkey


9
उपयोगकर्ता स्क्रिप्ट को जोड़ने के लिए वर्थ का उल्लेख करने के लिए आपको 'greasemonkey' जैसे एक्सटेंशन की आवश्यकता हो सकती है।
स्टिलज

1
This will apply to every page if left enabled, which might not be desirable in all situations.यदि आप स्क्रिप्ट को निष्पादित करता है तो क्या आप फ़ंक्शन को केवल घोंसला नहीं बना सकते हैं यदि URL किसी विशेष साइट या साइटों के सरणी से मेल खाता है?
हाशिम

1
@ हाशिम जो जरूरी नहीं है; आप यह निर्दिष्ट कर सकते हैं कि यह एक या अधिक @matchविवरणों के साथ किन पृष्ठों पर लागू होता है , लेकिन इसके लिए स्क्रिप्ट को संशोधित करने की आवश्यकता होती है जब आप इसे किसी विशिष्ट पृष्ठ पर लागू करना चाहते थे, जब तक कि आप केवल एक विशिष्ट साइट या साइटों के सेट पर न जाएं जिन्हें आप हमेशा संशोधित करना चाहते हैं। उदाहरण स्क्रिप्ट के लिए मैंने *://*/*URL को मिलान के रूप में उपयोग करके इसे सामान्य बना दिया है , इसलिए यह हर जगह लागू होगा। इसे उपयोगकर्ता स्क्रिप्ट प्रबंधक के मेनू से चालू और बंद किया जा सकता है।
हरोतर

10

डेवलपर टूल खोलें (F12), एलीमेंट टैब में बदलें, और बॉडी के नीचे दिए गए CSS नियमों को अनटिक करें :

  • उपयोगकर्ता-चयन: कोई नहीं;
  • वेबकिट-उपयोगकर्ता-चयन: कोई नहीं;

डेमो छवि


7

फ़ायरफ़ॉक्स के साथ, वहाँ एक बहुत आसान तरीका है:

View > Page Style > No Style

जर्मन में:

Ansich > Webseiten-Stil > Kein Stil

यहाँ छवि विवरण दर्ज करें

यह उन एम्बेडेड छवियों को डाउनलोड करने के लिए भी बहुत अच्छा काम करता है जिन पर राइट-क्लिक को अक्षम किया गया है।


1
हाँ, यह IE11 पर भी काम करता है।
मार्को डेमायो


3

मैं Stylus ( https://add0n.com/stylus.html ) का उपयोग कर रहा हूं और मैंने सभी वेबसाइटों पर लागू करने के लिए एक शैली बनाई है, और इस तरह मैं यह सुनिश्चित कर रहा हूं कि सब कुछ चयन करने योग्य है:

* {
  -webkit-user-select: auto !important;
  -moz-user-select: inherit  !important;
  -ms-user-select: inherit  !important;
  user-select: auto  !important;
}

तारांकन यह सुनिश्चित करने के लिए है कि शैली केवल एक निश्चित सीएसएस तत्व (जैसे <body>) पर लागू नहीं होती है , लेकिन सभी तत्वों के लिए। मुझे ऐसे मामलों का सामना करना पड़ा जहां चयन अवरुद्ध करना केवल एक बटन पाठ पर लागू किया गया था, इसलिए एक सीएसएस बनाने से <body>मदद नहीं मिलेगी।

मैं विदेशी भाषा वेबसाइटों पर त्वरित अनुवाद के लिए चयन का उपयोग करता हूं।


मैंने इनलाइन <body>टैग का प्रारूपण और दृश्यता तय की ; देखें superuser.com/help/formatting
अर्जन

0

मैं उपयोगकर्ता स्क्रिप्ट या ब्राउज़र एक्सटेंशन के लिए " बुकमार्कलेट " का उपयोग करना पसंद करता हूं । CSS को निष्क्रिय करने और आवश्यक पाठ को हथियाने के लिए कई बुकमार्क में से एक का उपयोग करने का प्रयास करें

जैसा कि यह वेब-पेज की पठनीयता को गड़बड़ कर सकता है, मैं कभी-कभी बुकमार्क को हटाने के पहले पेज को एक अलग टैब (टैब पर राइट क्लिक, डुप्लिकेट का चयन करें) में खोलता हूं

आप केवल वेब पेजों का पाठ देखने के लिए Google Mobilizer Bookmarklet भी आज़मा सकते हैं


0

जैसा कि अन्य जवाबों में कहा गया है, पृष्ठों के शरीर पर सीएसएस के साथ इसका करना। जब भी आप इसे हर बार हाथ से संपादित कर सकते हैं , यदि आप इस साइट का बहुत अधिक उपयोग करते हैं, तो मेरा सुझाव है कि यदि आप क्रोम का उपयोग करते हैं, तो आप स्टाइलिश एक्सटेंशन स्थापित करते हैं ।

स्टाइलिश आपको पृष्ठों पर लागू करने के लिए अतिरिक्त सीएसएस बनाने की सुविधा देता है। इसका उपयोग पूरे वेब पर किया जा सकता है। जब भी आप वेबसाइट पर जाते हैं, तो यह स्वचालित रूप से लागू होने का लाभ होता है (इसलिए आपको इसे प्रत्येक पृष्ठ लोड पर देव टूल्स के माध्यम से जोड़ने की आवश्यकता नहीं है)।

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

इस स्थिति में, आप आयात फ़ंक्शन का उपयोग कर सकते हैं, और नीचे दिए गए कोड को जोड़ सकते हैं, इससे आपको उस वेबसाइट पर पाठ का चयन करने की अनुमति मिल सकती है जिससे आप जुड़े हैं।

@-moz-document domain("www.angst-panik-hilfe.de") {
  body {
    -webkit-user-select: auto !important;
    -moz-user-select: inherit  !important;
    -ms-user-select: inherit  !important;
    user-select: auto  !important;
  }
}

केवल फ़ायरफ़ॉक्स पर चलने वाली चीज़ के लिए वेबकिट और एमएस उपसर्ग जोड़ना थोड़ा सा ... बेमानी है।
स्टीफेन बिजिटिटर

@StephanBijzitter सच है, मैं केवल पृष्ठ पर पहले से ही उपयोगकर्ता-चयन से संबंधित सभी शैलियों को ओवरवोट करता हूं। लेकिन फिर से, इसका मतलब है कि कोई क्रोम का उपयोग नहीं कर रहा है, लेकिन इसी तरह के विस्तार के साथ इस वर्ग को आसानी से कॉपी कर सकता है और बिना काम के समान लाभ प्राप्त कर सकता है - और यह वास्तव में समाधान को नुकसान नहीं पहुंचाता है।
ओब्सीडियन फीनिक्स

0

प्रस्तावित कई समाधान ब्राउज़र विशिष्ट हो सकते हैं, इसलिए यह कुछ विकल्पों का सुझाव देने के लायक है:

  1. एक ब्रोसर का उपयोग करें जो आपको अधिक सम्मान देता है।

    ए। Emacs में ब्राउज़र्स होते हैं emacs-w3mऔर ewwवह हमेशा टेक्स्ट को सेलेक्ट करने की अनुमति देगा।

    ख। इस तरह के रूप में अन्य पाठ आधारित ब्राउज़र lynx, elinksऔर w3m, एक पाठ का चयन करने के लिए अनुमति दे सकते हैं, लेकिन फिर भी नहीं करता है, तो, अगर एक टर्मिनल विंडो में उन कार्यक्रमों को चलाने, एक पाठ है एक माउस का उपयोग चुन सकते हैं। और, यदि कोई उन कार्यक्रमों का उपयोग कर रहा है, तो कोई बिना माउस के भी पाठ की प्रतिलिपि बनाने की क्षमता का tmuxउपयोग कर सकता है tmux

  2. एक पठनीय पाठ प्रारूप में संपूर्ण url डाउनलोड करने के लिए कमांड लाइन टूल का उपयोग करें।

    ए। w3m -dump [your_url] > your_file.txt

    ख। lynx -dump [your_url] > your_file.txt। मैं आमतौर पर इसे पसंद करता हूं क्योंकि यह हाइपरलिंक्स को पठनीय फुटनोट के रूप में चिह्नित करता है!


0

AddOn "एब्सोल्यूट इनेबल राइट क्लिक और कॉपी" को इनस्टॉल करें, जो हर उस चीज को इनेबल करता है जो कोई No Script AddOns नहीं कर सकता।


0

बस निम्नलिखित सीएसएस शैली बनाएं :

html, body {
    user-select: text;
}

स्टायलिश नामक एक एक्सटेंशन है जो आपको अपनी पसंद की किसी भी वेबसाइट में उस (या किसी अन्य) सीएसएस कोड को स्थापित करने की अनुमति देता है। बस उपरोक्त सीएसएस कोड में टाइप करें और बताएं कि आप किस वेबसाइट [s] पर इसे लागू करना चाहते हैं और आप जाना चाहते हैं। यह एक्सटेंशन Chrome, Baidu, Firefox और Opera पर काम करता है। यदि आप IE पर होते हैं तो आप भाग्य से बाहर हैं। लेकिन आप पहले से ही जानते हैं कि आप नहीं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.