در این بخش از سری آموزش جاوا اسکریپت قصد داریم درباره شیء history صحبت کنیم.
شیء history
خصوصیت history
از آبجکت window
شامل تاریخچه سشن, لیست صفحات بازشده می باشد.
از آنجا که window
یک آبجکت سراسری و در بالای زنجیره اسکوپ است. بنابراین خصوصیات آبجکت window
مثل window.history
بدون پیشوند window.
قابل دسترس باشند.
بخش زیر به شما نحوه دریافت اطلاعات تاریخچه صفحات مرور شده توسط کاربر را نشان می دهد. به هر حال, به دلایل امنیتی اسکریپت ها اجازه دسترس به URL های ذخیره شده را ندارند.
دریافت تعداد صفحات مرور شده
خصوصیت window.history.length
می تواند برای دریافت تعداد صفحات تاریخچه سشن برای پنجره فعلی استفاده شود.
1 2 3 4 5 6 7 |
<script> function getViews() { alert("You've accessed " + history.length + " web pages in this session."); } </script> <button type="button" onclick="getViews();">Get Views Count</button> |
برگشت به صفحه قبلی
می توانید از متد back()
برای برگشت به صفحه قبلی با حفظ اطلاعات وارد شده استفاده می شود.
1 2 3 4 5 6 7 |
<script> function goBack() { window.history.back(); } </script> <button type="button" onclick="goBack();">Go Back</button> |
رفتن به صفحه بعدی
می توانید از متد forward()
برای رفتن به صفحه بعدی در تاریخچه سشن مرورگر استفاده کنید.
1 2 3 4 5 6 7 |
<script> function goForward() { window.history.forward(); } </script> <button type="button" onclick="goForward();">Go Forward</button> |
رفتن به صفحه مشخص
می توانید صفحه مشخصی را از تاریخچه سشن را با متد go()
بارگذاری کنید. این متد یک پارامتر عددی را دریافت می کند.
مقدار منفی به عقب بر می گردد و مقدار مثبت نیز در تاریخچه سشن به صفحه بعدی می رود.
1 2 3 4 5 |
window.history.go(2); // Go back two pages window.history.go(-1); // Go back one page window.history.go(0); // Reload the current page window.history.go(1); // Go forward one page window.history.go(2); // Go forward two pages |
نکته: اگر شما از این متد ها برای دسترسی به صفحاتی که وجود ندارد استفاده کنید, عملا متدهای back()
, forward()
, go()
کاری انجام نخواند داد.
امیدوارم از آموزش شیء history در جاوا اسکریپت نهایت استفاده را برده باشید.
هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .
موفق باشید.