1. وظيفة تحليل عنوان URL
نسخة الكود كما يلي:
<script>
/**
*@param {string} عنوان URL URL الكامل
*@إرجاع {كائن} كائن مخصص
*@الوصف مثال الاستخدام: var myurl = parseurl ('http://abc.com:8080/dir/index.html؟id=255&m=hello#top') ؛
myurl.file = 'index.html'
myurl.hash = 'top'
myurl.host = 'abc.com'
myurl.query = '؟ id = 255 & m = hello'
myurl.params = object = {id: 255 ، m: hello}
myurl.path = '/dir/index.html'
myurl.segments = array = ['dir' ، 'index.html']
myurl.port = '8080'
myurl.protocol = 'http'
myurl.source = 'http://abc.com:8080/dir/index.html؟id=255&m=hello#top'
*/
وظيفة parseurl (url) {
var a = document.createElement ('a') ؛
A.Href = url ؛
يعود {
المصدر: URL ،
البروتوكول: A.Protocol.replace (':' ، '') ،
المضيف: A.HostName ،
الميناء: A.Port ،
الاستعلام: A.Search ،
params: (function () {
var ret = {} ،
seg = a.search.replace (/^/؟/، ''). الانقسام ('&') ،
len = seg.length ، i = 0 ، s ؛
لـ (؛ i <len ؛ i ++) {
if (! seg [i]) {متابعة ؛ }
s = seg [i] .split ('=') ؛
ret [s [0]] = s [1] ؛
}
العودة
}) () ،
ملف: (A.PathName.match (/// ([^//؟#]+) $/i) || [، '']) [1] ،
التجزئة: A.Hash.Replace ('#' ، '') ،
المسار: A.PathName.replace (/^([^//])/، '/$ 1') ،
النسبية: (A.Href.Match (/tps؟: ////[^//]+(.+)/) || ['']) [1] ،
الأجزاء: A.PathName.replace (/^/// ، ''). Split ('/')
} ؛
}
// var myurl = parseurl ('http://abc.com:8080/dir/index.html؟id=255&m=hello#top') ؛
var myurl = parseurl ('http: // localhost: 8080/test/mytest/tologina.ction؟ m = 123 & pid = abc') ؛
تنبيه (myurl.path) ؛
تنبيه (myurl.params.m) ؛
تنبيه (myurl.params.pid) ؛
</script>
2. تحليل عنوان URL مجزأ
عنوان URL: موقع الموارد الموحد (URL)
يتكون عنوان URL الكامل من هذه الأجزاء: المخطط: // المضيف: منفذ/مسار؟ استعلام#جزء
نسخة الكود كما يلي:
مخطط = بروتوكول الاتصالات (HTTP ، FTP ، Maito ، إلخ)
مضيف = مضيف (اسم المجال أو IP)
المنفذ = رقم المنفذ
المسار = المسار
Query = Query (اختياري ، يستخدم لتمرير المعلمات إلى صفحات الويب الديناميكية (مثل صفحات الويب التي تم إجراؤها باستخدام CGI ، ISAPI ، PHP/JSP/ASP/ASP.NET والتقنيات الأخرى).
شظية = جزء المعلومات (سلسلة تستخدم لتحديد أجزاء في مورد الشبكة. على سبيل المثال ، إذا كان هناك تفسيرات متعددة الأسماء في صفحة ويب ، يمكنك استخدام جزء لتحديد موقع شرح معين مباشرة (يُعرف أيضًا باسم المرساة.))
لمثل عنوان URL
//www.vevb.com:80/seo/؟ver=1.0&id=6#imhere
يمكننا الحصول على أجزاء مختلفة منه في جافا سكريبت
1 ، window.location.href
سلسلة عنوان URL بأكملها (شريط العناوين الكامل في المتصفح)
2 ، window.location.protocol
جزء البروتوكول من عنوان URL
هذا المثال يعيد القيمة: http:
3 ، window.location.host
الجزء المضيف من عنوان URL
قيمة الإرجاع في هذا المثال: www.vevb.com
4 ، window.location.port
جزء المنفذ من عنوان URL
إذا تم استخدام منفذ 80 افتراضيًا (تحديث: حتى لو تمت إضافة: 80) ، فإن قيمة الإرجاع ليست الافتراضي 80 ولكن الشخصية الفارغة
هذا المثال يعيد القيمة: ""
5 ، window.location.pathName
جزء المسار من عنوان URL (هذا هو عنوان الملف)
هذا المثال يرجع القيمة: /SEO /
6 ، window.location.search
الاستعلام (المعلمات) جزء
بالإضافة إلى تعيين قيم للغات الديناميكية ، يمكننا أيضًا إعطاء صفحات ثابتة واستخدام JavaScript للحصول على قيمة المعلمة التي يُعتقد أنها.
قيمة الإرجاع في هذا المثال:؟ ver = 1.0 & id = 6
7 ، window.location.hash
نقطة مرساة
قيمة الإرجاع في هذا المثال: #Imhere