मैं एक जावास्क्रिप्ट को एक बटन से लिंक करने का प्रबंधन नहीं कर सकता [बंद]


-3

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

http://codepaste.net/vsimew

function helloworld() {
  alert("Hello World!");
}

यह कमांड popup.js से है। मेरे पास श्रोताओं के लिए एक बैकग्राउंड भी है। लेकिन मुझे नहीं पता कि श्रोताओं का उपयोग कैसे किया जाए।

सादर

जवाबों:


2

कारण यह है कि काम नहीं कर रहा है क्योंकि इनलाइन जावास्क्रिप्ट को विस्तार पृष्ठों में अनुमति नहीं है।

इनलाइन जावास्क्रिप्ट निष्पादित नहीं किया जाएगा। यह प्रतिबंध इनलाइन <script>ब्लॉक और इनलाइन इवेंट हैंडलर (जैसे <button onclick="...">) दोनों पर प्रतिबंध लगाता है ।

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

आप addEventListenerफ़ंक्शन का उपयोग करके एक ऑनक्लिक हैंडलर जोड़ सकते हैं ; Chrome दस्तावेज़ीकरण का यह भाग ऐसा करने का एक उदाहरण प्रदान करता है:

https://developer.chrome.com/extensions/contentSecurityPolicy#JSExecution

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