2012-03-24 10 views
11

का उपयोग कर तत्वों को अक्षम कैसे करते हैं मैं <script> टैग अक्षम करना चाहता हूं। मेरा कोड यहाँ है, लेकिन यह काम नहीं करता है।आप <script> जावास्क्रिप्ट

document.getElementsByTagName('script').disabled = true; 
+0

स्क्रिप्ट टैग के लिए कोई अक्षम विशेषता नहीं है। – GordonM

+0

जब आप कहते हैं कि "स्क्रिप्ट टैग अक्षम करें" का क्या मतलब है? कैसे और क्यों अक्षम करें? आपकी क्या प्राप्त करने की इच्छा है? – Steve

+0

@ कोवानोवा जिज्ञासा से बाहर, आप एक सीएसएस स्टाइलशीट में एक अक्षम विशेषता कैसे लागू करेंगे? – David

उत्तर

9

नहीं किया जा सकता है ... एक स्क्रिप्ट टैग के रूप में जल्द डोम रेंडरर उसे रेंडर के रूप में मूल्यांकन करता है, तो वार्ड के बाद उस पर एक संभाल रही ज्यादा कुछ नहीं होगा।

+1

धन्यवाद! आपके पास एक वैध बिंदु है! – vurquee

1

क्षमा करें, लेकिन आप <script> तत्व को अक्षम नहीं कर सकते हैं।

0

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

यदि आप उस HTML स्ट्रिंग को जोड़ते हैं जिसे आप डोम में जोड़ने से पहले जोड़ना चाहते हैं तो आप इसे जावास्क्रिप्ट में भी कर सकते हैं।

8

वास्तव में, यह बदलकर निष्पादन को निष्क्रिय करने के लिए संभव है "प्रकार" विशेषता:

<script type="text/javascript"> 
    alert("I will alert you"); 
</script> 

<script type="application/json"> 
    alert("And I will keep silent"); 
</script> 

<script> 
    alert("I will alert too"); 
</script> 

http://jsfiddle.net/r6c0x0sc/

+1

यह काम नहीं करेगा अगर स्क्रिप्ट टैग पहले से ही –

+1

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

0

के लिए डोम नोड्स को क्रियान्वित करने से जावास्क्रिप्ट के सबसे पाएगा पर सभी घटनाओं निकाल रहा है (यहां document):

for (key in getEventListeners(document)) { 
    getEventListeners(document)[key].forEach(function(c) { 
    c.remove() 
    }) 
} 
संबंधित मुद्दे