मुझे वेब विकास को छुआ है, कुछ समय हो गया है, और मैं इसमें वापस आने की कोशिश कर रहा हूं। हालांकि, किसी कारण से, मुझे अपनी JS स्क्रिप्ट चलाने में परेशानी हो रही है। मैंने <script src="script.js"></script> का उपयोग करके एक JS फ़ाइल को लिंक करने का प्रयास किया है, और भले ही स्क्रिप्ट फ़ाइल मेरी index.html के समान निर्देशिका में है, ऐसा लगता है कि यह पूरी तरह से अनदेखा कर रहा है। मेरे पास jQuery से कुछ ईवेंट श्रोता हैं, लेकिन कोड की शुरुआत में एक console.log("sanity check"); है।

तो, उसके बाद काम नहीं किया, मैंने स्क्रिप्ट लिखने की कोशिश की सीधे html फ़ाइल में जैसे:

<script>
     console.log("WHAT IS GOING ON?!");
     alert("It's finally working!");
</script>

और वह अभी भी काम नहीं किया। मदद!

संपादित करें:

यहाँ प्रासंगिक HTML है:

<head>
    <script src="jquery-3.4.1.min.js"></script>
    <script src="script.js"></script>
    <script>
      console.log("WHAT THE CRAP IS GOING ONNNN");
      alert("JS is running");
    </script>
</head>

यहाँ जे एस है,

console.log("sanity check");
$(document).ready(function() {
  console.log("Helloooo and good moonring!");
  $("#back").hover(function() {
    console.log ("*eyeroll* YES. I can hear you.");
    $("#back").attr("cursor", "pointer");
  }, function() {
    $("#back").attr("cursor", "default");
  });
});

इसमें से कोई भी काम नहीं कर रहा है। मैं इसे स्थानीय रूप से चला रहा हूं। क्रोम में निरीक्षण उपकरण कोई त्रुटि नहीं दिखाता है।

2 संपादित करें:

मैंने निरीक्षण उपकरण में कोड को करीब से देखा। फिर भी, इसमें कुछ भी गलत नहीं लग रहा है, लेकिन मैंने देखा है कि यह पृष्ठ को रीफ्रेश करने पर सहेजे गए परिवर्तनों में अपडेट नहीं हो रहा है। यह स्पष्ट रूप से समस्याग्रस्त है, और बहुत भ्रमित करने वाला है। type="text/javascript" को भी जोड़ा और script.js को ./script.js में बदल दिया (और jQuery फ़ाइल के साथ भी ऐसा ही)।

0
Ethan Leyden 7 फरवरी 2020, 03:58
1
आप अपनी स्क्रिप्ट कैसे चला रहे हैं?
 – 
PM 77-1
7 फरवरी 2020, 04:00
1
वाह! वह अजीब है। हमें इस html के बारे में और बताएं और यह सर्वर (http) से है या आपकी फ़ाइल निर्देशिका (फ़ाइल) से है
 – 
Sydney Y
7 फरवरी 2020, 04:00
1
मैंने स्क्रीनशॉट के साथ एक "उत्तर" जोड़ा। मुझे संदेह है कि यह समस्या है लेकिन यह जांच के लायक है।
 – 
Will
7 फरवरी 2020, 04:11
1
यदि URL http में शुरू होता है तो "/script.js" आज़माएं। अगर यह फ़ाइल है: // कोशिश करें "./script.js"
 – 
Sydney Y
7 फरवरी 2020, 04:14
1
(आपका समाधान देखा; हम सब वहाँ रहे हैं, योग्य) पुनः लोड का उत्तर देने के लिए: ब्राउज़र के कुछ नियम हैं और सर्वर के कुछ नियम हैं। लेकिन अपने लिए व्यक्तिगत रूप से: आप अपने देव उपकरण में 'कैश अक्षम' करने के लिए एक सेटिंग बदल सकते हैं जो केवल तभी काम करेगा जब देव उपकरण खुले हों।
 – 
Sydney Y
7 फरवरी 2020, 04:35

2 जवाब

यह स्निपेट काम करता है, नहीं?

<script>
  console.log("WHAT THE CRAP IS GOING ONNNN");
  alert("JS is running");
</script>

सुनिश्चित करें कि ये चेक किए गए हैं और संदेश छिपे नहीं हैं। यह भी सुनिश्चित करने के लिए "console.log" को "अलर्ट" में बदलें, लेकिन यह सुनिश्चित करने के लिए जांचें कि संदेशों को फ़िल्टर नहीं किया जा रहा है।

Chrome Console Filter

1
Will 7 फरवरी 2020, 04:15
चेक किया गया। और अलर्ट संदेश डाले गए। अब तक कुछ भी नहीं। :(
 – 
Ethan Leyden
7 फरवरी 2020, 04:13
आपका संपादन देखा। वह कोड काम नहीं करता है। अधिक जानकारी के साथ पोस्ट में अपडेट किया।
 – 
Ethan Leyden
7 फरवरी 2020, 04:18
क्या आपने (या आपके शिफ्टी रूममेट) जावास्क्रिप्ट को अक्षम कर दिया था? developers.google.com/web/tools/chrome-devtools/javascript/ …
 – 
Will
7 फरवरी 2020, 04:21
1
हाँ, मैं स्टम्प्ड हूँ। स्निपेट में वह कोड एक अलर्ट पॉप करता है और एक कंसोल संदेश लिखता है। आपने क्या किया, एथन? परेशान हो जाओ, एथन!
 – 
Will
7 फरवरी 2020, 04:25
1
जैसा कि अपेक्षित था, मैंने एक गूंगा गलती की। उत्तर पोस्ट किया गया!
 – 
Ethan Leyden
7 फरवरी 2020, 04:30

हल किया! इससे पहले, इस मुद्दे पर आने से पहले, मैंने अपने फ़ोल्डर को "वेब डिज़ाइन प्रोजेक्ट" से "वेब डिज़ाइन प्रोजेक्ट" में बदलने का फैसला किया, क्योंकि कुछ चीजें थीं जिन्हें मैं टर्मिनल में देखना चाहता था। जाहिरा तौर पर मेरे टेक्स्ट एडिटर, एटम ने फैसला किया कि इसका मतलब यह है कि मैंने "वेब डिज़ाइन प्रोजेक्ट" नामक फ़ोल्डर को खुला छोड़ दिया था, वह एक पूरी तरह से अलग फ़ोल्डर था। जो परिवर्तन मैंने किए थे, उन्हें "WebDesignProject" के लिए मैप नहीं किया गया था। " लेकिन इसके बजाय एक नया फ़ोल्डर, जिसे एक बार फिर "वेब डिज़ाइन प्रोजेक्ट" नाम दिया गया है।

निष्कर्ष के तौर पर। अपने प्रोजेक्ट फोल्डर के नाम में कभी भी स्पेस न डालें। और, जब आप फ़ोल्डर का नाम बदलते हैं, तो सब कुछ पुनरारंभ करें। परमाणु को इस घटना को ठीक करना चाहिए।

1
Ethan Leyden 7 फरवरी 2020, 04:30
हम्म, मुझे लगता है कि यह एक एटम समस्या से अधिक एक स्वयं के लक्ष्य की स्थिति है!
 – 
see sharper
7 फरवरी 2020, 04:34