जवाबों:
इसके लिए आपको jQuery की आवश्यकता नहीं है, क्योंकि साधारण जावास्क्रिप्ट पर्याप्त होगी:
alert(document.domain);
इसे कार्रवाई में देखें:
console.log("Output;");
console.log(location.hostname);
console.log(document.domain);
alert(window.location.hostname)
console.log("document.URL : "+document.URL);
console.log("document.location.href : "+document.location.href);
console.log("document.location.origin : "+document.location.origin);
console.log("document.location.hostname : "+document.location.hostname);
console.log("document.location.host : "+document.location.host);
console.log("document.location.pathname : "+document.location.pathname);
डोमेन से संबंधित मूल्यों के लिए, window.location
ऑनलाइन के गुणों की जाँच करें । आप पा सकते हैं कि location.host
यह एक बेहतर विकल्प है, क्योंकि इसकी सामग्री अलग हो सकती है document.domain
। उदाहरण के लिए, url http://192.168.1.80:8080
में केवल ipaddress होगा document.domain
, लेकिन ipaddress और port संख्या दोनों में location.host
।
window.location.host
(bibby के रूप में पोस्ट) का उपयोग करने की सिफारिश करेंगे। मैंने अभी एक बग तय किया है जहां document.domain
उप डोमेन के बजाय रूट डोमेन पर सेट किया जा रहा था।
document.location.origin
रिटर्न में undefined
।
संपादित करें:
यदि आपको IE10 का समर्थन करने की आवश्यकता नहीं है, तो आप बस उपयोग कर सकते हैं: document.location.origin
मूल उत्तर, यदि आपको विरासत समर्थन की आवश्यकता है
स्थान ऑब्जेक्ट का निरीक्षण करके आप यह सब प्राप्त कर सकते हैं:
location = {
host: "stackoverflow.com",
hostname: "stackoverflow.com",
href: "http://stackoverflow.com/questions/2300771/jquery-domain-get-url",
pathname: "/questions/2300771/jquery-domain-get-url",
port: "",
protocol: "http:"
}
इसलिए:
location.host
डोमेन होगा, इस मामले में stackoverflow.com। Url के पूर्ण पहले भाग के लिए, आप इसका उपयोग कर सकते हैं:
location.protocol + "//" + location.host
जो इस मामले में http://stackoverflow.com होगा
कोई jQuery की आवश्यकता है।
document.location.origin
जिसके परिणामस्वरूप https://stackoverflow.com होगा । इस पद्धति में उपयुक्त प्रोटोकॉल शामिल है
यदि आपको मेरी तरह स्ट्रिंग की आवश्यकता है, तो इस फ़ंक्शन का उपयोग करें - यह वास्तव में काम करता है।
function getHost(url)
{
var a = document.createElement('a');
a.href = url;
return a.hostname;
}
लेकिन ध्यान दें, यदि URL में कोई उपडोमेन (जैसे www।) है तो वह होस्टनाम के साथ वापस आ जाएगा। इसके विपरीत, अगर कोई उपडोमेन नहीं है तो होस्टनाम के पास एक भी नहीं होगा।
getHost('http://www.google.com') == 'google.com'
जबकि यह सच होगा:getHost('http://google.com') == 'google.com'
आप वर्तमान URL के विभिन्न मापदंडों को प्राप्त करने के लिए नीचे दिए गए कोड का उपयोग कर सकते हैं
alert("document.URL : "+document.URL);
alert("document.location.href : "+document.location.href);
alert("document.location.origin : "+document.location.origin);
alert("document.location.hostname : "+document.location.hostname);
alert("document.location.host : "+document.location.host);
alert("document.location.pathname : "+document.location.pathname);
jQuery की जरूरत नहीं है, सरल जावास्क्रिप्ट का उपयोग करें:
document.domain
var part = location.hostname.split('.');
var subdomains = part.shift();
var upperleveldomains = part.join('.');
दूसरे स्तर का डोमेन, आप उपयोग कर सकते हैं
var sleveldomain = parts.slice(-2).join('.');
इसे देखो
alert(window.location.hostname);
यह www.domain.com के रूप में होस्ट नाम लौटाएगा
जहाँ तक मुझे लगता है कि किसी ने jquery समाधान नहीं बल्कि देशी जावास्क्रिप्ट कोड पोस्ट किया है।
आपको यूआरएल को एक स्ट्रिंग के रूप में पास करना होगा और इसे रेगेक्सपी का उपयोग किए बिना होस्ट मिलेगा।
function getHostFromUrl(urlString) {
return $a = $('<a>', {
'href': urlString
}).prop('host');
}
//If url is something.domain.com this returns -> domain.com
function getDomain() {
return window.location.hostname.replace(/([a-zA-Z0-9]+.)/,"");
}
Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.
- जेमी