ठीक है, दोस्तों, यहाँ मेरी छोटी परीक्षा भी है। मुझे एक समान समस्या थी, इसलिए मैंने 3 स्थितियों का परीक्षण करने का निर्णय लिया:
- एक HTML फ़ाइल, एक बाहरी जेएस फ़ाइल ... क्या यह बिल्कुल काम करती है - क्या कार्य एक वैश्विक संस्करण के माध्यम से संवाद कर सकते हैं?
- दो HTML फाइलें, एक बाहरी JS फाइल, एक ब्राउज़र, दो टैब: क्या वे वैश्विक संस्करण के माध्यम से हस्तक्षेप करेंगे?
- एक HTML फ़ाइल, 2 ब्राउज़रों द्वारा खुली, क्या यह काम करेगी और क्या वे हस्तक्षेप करेगी?
सभी परिणाम उम्मीद के मुताबिक थे।
- यह काम करता हैं। कार्य f1 () और f2 () वैश्विक संस्करण के माध्यम से संचार करते हैं (var बाहरी JS फ़ाइल में है, HTML फ़ाइल में नहीं)।
- वे हस्तक्षेप नहीं करते। प्रत्येक ब्राउज़र टैब, प्रत्येक HTML पेज के लिए JS फाइल की स्पष्ट रूप से अलग-अलग प्रतियां बनाई गई हैं।
- सभी स्वतंत्र रूप से काम करते हैं, जैसा कि अपेक्षित था।
ब्राउज़िंग ट्यूटोरियल के बजाय, मुझे इसे आज़माने में आसानी हुई, इसलिए मैंने किया। मेरा निष्कर्ष: जब भी आप अपने HTML पेज में एक बाहरी JS फाइल को शामिल करते हैं, तो बाहरी JS की सामग्री पृष्ठ के प्रस्तुत होने से पहले आपके HTML पेज में "कॉपी / पेस्ट" हो जाती है। या यदि आप करेंगे तो अपने PHP पेज में। कृपया मुझे सही करें अगर मैं यहाँ गलत हूँ। Thanx।
मेरे उदाहरण फ़ाइलों का पालन करें:
बाहरी जेएस:
var global = 0;
function f1()
{
alert('fired: f1');
global = 1;
alert('global changed to 1');
}
function f2()
{
alert('fired f2');
alert('value of global: '+global);
}
HTML 1:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="external.js"></script>
<title>External JS Globals - index.php</title>
</head>
<body>
<button type="button" id="button1" onclick="f1();"> fire f1 </button>
<br />
<button type="button" id="button2" onclick="f2();"> fire f2 </button>
<br />
</body>
</html>
HTML 2
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="external.js"></script>
<title>External JS Globals - index2.php</title>
</head>
<body>
<button type="button" id="button1" onclick="f1();"> fire f1 </button>
<br />
<button type="button" id="button2" onclick="f2();"> fire f2 </button>
<br />
</body>
</html>
<script>
। मैंने सिर्फ 2 अलग-अलग तरीकों की कोशिश की (हेल्पर्स.जेएस फ़ाइल से पहले संस्करण घोषित किए बिना) और वे दोनों काम करते थे। मैं एक उत्तर पोस्ट करूंगा, लेकिन ऐसा लगता है कि आपके प्रश्न में कुछ महत्वपूर्ण जानकारी गायब होनी चाहिए।