يمثل Window.history السجلات التاريخية لكائن النافذة ، والذي تم إنشاؤه بنشاط من قبل المستخدمين وقبول الكائن العالمي يتحكم فيه البرنامج النصي JavaScript. يوفر كائن النافذة الوصول إلى السجل التاريخي للمتكلم عبر كائن التاريخ. إنه يكشف عن بعض الأساليب والسمات المفيدة للغاية ، مما يتيح لك المضي قدمًا والتراجع بحرية في السجلات التاريخية.
1. إلى الأمام والخلف للسجلات التاريخيةتراجع في السجل التاريخي ، يمكنك القيام بذلك:
window.history.back () ؛
هذا يشبه المستخدم انقر فوق الزر الوراء للمتصفح.
وبالمثل ، يمكنك المضي قدمًا ، تمامًا مثل النقر فوق الزر "التوجيه" في المتصفح ، مثل هذا:
window.history.forward () ؛2. انتقل إلى السجلات التاريخية المعينة
من خلال تحديد قيمة مقارنة بموضع الصفحة الحالي ، يمكنك استخدام طريقة GO () لتحميل الصفحة من السجل التاريخي للجلسة الحالية (قيمة فهرس موضع الصفحة الحالية هي 0 ، والصفحة السابقة هي -1 ، و. الصفحة التالية هي 1).
لتراجع صفحة واحدة (أي ما يعادل الاتصال ()) :):
window.history.go (-1) ؛
انقل صفحة واحدة للأمام (أي ما يعادل الاتصال بالأمام ()):
window.history.go (1) ؛
مماثل ، PASS PARAMETER 2 ، يمكنك المضي قدمًا إلى الأمام 2 نقاط تسجيل. يمكنك عرض قيمة سمة الطول ، وعدد نقاط التسجيل الموجودة في مكدس السجلات التاريخية:
window.history.length ؛2. قم بتعديل نقطة السجل التاريخية
امتدت API الجديدة من HTML5. يمكنك تخزين السجلات التاريخية الحالية ، واستبدال السجلات التاريخية الحالية ، ومراقبة نقاط السجلات التاريخية.
1. تخزين نقطة السجل التاريخية الحاليةتشبه الطريقة المخزنة صفيف المكدس (Array.push ()) ، ويتم إضافة نقطة تسجيل تاريخية جديدة إلى النافذة.
// عنوان URL الحالي هو: http://qianduanblog.com/index.htmlvar json = {time: new date (). لا يتحقق المتصفح ما إذا كان عنوان URL موجودًا فقط.
بعد تنفيذ طريقة PushState ، يكون عنوان URL الخاص بالصفحة هو http://qianduanblog.com/post -html.
2. استبدل نقطة السجل التاريخية الحاليةWindow.history.replacestate يشبه Window.history.pushstate. إضافة إلى نقطة السجل. عندما تحتاج إلى تحديث كائن الحالة أو عنوان URL لإدخال السجل التاريخي الحالي استجابةً لعمليات معينة للمستخدم ، فإن استخدام طريقة replacestate () مناسب بشكل خاص.
3. نقطة تسجيل تاريخي للمراقبةيمكن اعتبار نقطة السجل التاريخي للمراقبة ، بديهية تغيير عنوان URL ، ولكنها ستتجاهل الجزء التجزوي في عنوان URL ، والاستماع إلى الجزء التجزئة في عنوان URL ، HTML5 لديه واجهة برمجة تطبيقات جديدة كأحديد. هذه الطريقة والبراعة المتقاطعة في مدونتي قيل أيضًا لهذه الطريقة و crossbrowler. يمكنك الاستماع إلى تغييرات عنوان URL من خلال window.onpopstate ، ويمكنك تخزين كائن الحالة في نقطة السجل التاريخية ، وهو كائن JSON المذكور أعلاه ، مثل:
// The current url is: http://qianduanblog.com/post -htmlwindow.onpopState=Function () {// Get the json object stored at the historical record point var json = window.history.state; // Click to العودة إلى: http://qianduanblog.com/index.html // JSON التي تم الحصول عليها هي NULL // مرة أخرى.
تجدر الإشارة إلى أن: JavaScript Script ينفذ window.history.pushstate و window.history.replacestate لا يؤدي إلى حدث onpopstate.
من المهم أيضًا أن نلاحظ أن رد فعل متصفح Google و Firefox على الصفحة لأول مرة يختلف.
ما سبق هو التفسير التفصيلي لعمليات Pushstate و PopState لـ HTML5. وقت. شكرا جزيلا لدعمكم لموقع VEVB Wulin!