मैंने एक ही समय में पुराने window.performance.navigation
और नए दोनों तरीकों का उपयोग करने के लिए इस फ़ंक्शन को लिखा है performance.getEntriesByType("navigation")
:
function navigationType(){
var result;
var p;
if (window.performance.navigation) {
result=window.performance.navigation;
if (result==255){result=4} // 4 is my invention!
}
if (window.performance.getEntriesByType("navigation")){
p=window.performance.getEntriesByType("navigation")[0].type;
if (p=='navigate'){result=0}
if (p=='reload'){result=1}
if (p=='back_forward'){result=2}
if (p=='prerender'){result=3} //3 is my invention!
}
return result;
}
परिणाम विवरण:
0: एक लिंक पर क्लिक करके, ब्राउज़र के एड्रेस बार में URL दर्ज करना, फॉर्म सबमिट करना, बुकमार्क पर क्लिक करना, स्क्रिप्ट ऑपरेशन के माध्यम से आरंभ करना।
1: Reload बटन पर क्लिक करना या उपयोग करनाLocation.reload()
2: ब्रॉशर इतिहास (बाक और फारवर्ड) के साथ काम करना।
3: पूर्ववर्ती गतिविधि की तरह<link rel="prerender" href="https://stackoverflow.com//example.com/next-page.html">
4: किसी भी अन्य विधि।