මා ආරම්භ කිරීමට පෙර, jQuery යනු DOM හැසිරවීම සඳහා භාවිතා කරන JavaScript පුස්තකාලයකි. එබැවින් ඔබ පිටුව හරවා යැවීම සඳහා jQuery භාවිතා නොකළ යුතුය.
Jquery.com වෙතින් උපුටා ගැනීමක්:
පැරණි බ්රව්සර් අනුවාද වල ප්රධාන ගැටළු නොමැතිව jQuery ක්රියාත්මක විය හැකි නමුත්, අපි ඒවා තුළ jQuery සක්රියව පරීක්ෂා නොකරන අතර සාමාන්යයෙන් ඒවායේ ඇති දෝෂ නිවැරදි නොකරමු.
එය මෙහි හමු විය:
https://jquery.com/browser-support/
එබැවින් jQuery යනු පසුගාමී ගැළපුම සඳහා අවසන් සහ සියල්ල විය හැකි විසඳුමක් නොවේ.
අමු ජාවාස්ක්රිප්ට් භාවිතයෙන් පහත දැක්වෙන විසඳුම සියලුම බ්රව්සර්වල ක්රියාත්මක වන අතර දීර් time කාලයක් තිස්සේ සම්මත වී ඇති බැවින් හරස් බ්රව්සර් සහාය සඳහා ඔබට පුස්තකාල අවශ්ය නොවේ.
මෙම පිටුව මිලි තත්පර 3000 කට පසු ගූගල් වෙත හරවා යවනු ඇත
<!DOCTYPE html>
<html>
<head>
<title>example</title>
</head>
<body>
<p>You will be redirected to google shortly.</p>
<script>
setTimeout(function(){
window.location.href="http://www.google.com"; // The URL that will be redirected too.
}, 3000); // The bigger the number the longer the delay.
</script>
</body>
</html>
විවිධ විකල්ප පහත පරිදි වේ:
window.location.href="url"; // Simulates normal navigation to a new page
window.location.replace("url"); // Removes current URL from history and replaces it with a new URL
window.location.assign("url"); // Adds new URL to the history stack and redirects to the new URL
window.history.back(); // Simulates a back button click
window.history.go(-1); // Simulates a back button click
window.history.back(-1); // Simulates a back button click
window.navigate("page.html"); // Same as window.location="url"
ප්රතිස්ථාපනය භාවිතා කරන විට, පිටුපස බොත්තම යළි-යොමුවීම් පිටුවට නොයනු ඇත, එය ඉතිහාසයේ කිසි දිනෙක නොවූවාක් මෙන්. ඔබට යළි-යොමුවීම් පිටුවට ආපසු යාමට පරිශීලකයාට අවශ්ය නම් භාවිතා කරන්න window.location.href
හෝ window.location.assign
. ඔබ යළි-යොමුවීම් පිටුවට යාමට පරිශීලකයාට ඉඩ දෙන විකල්පයක් භාවිතා කරන්නේ නම්, ඔබ යළි-යොමුවීම් පිටුවට ඇතුළු වූ විට එය ඔබව නැවත හරවා යවන බව මතක තබා ගන්න. එබැවින් ඔබේ යළි-යොමුවීම සඳහා විකල්පයක් තෝරා ගැනීමේදී එය සැලකිල්ලට ගන්න. පරිශීලකයා විසින් ක්රියාවක් සිදු කළ විට පමණක් පිටුව හරවා යැවීමේ කොන්දේසි යටතේ, පිටුපස බොත්තම් ඉතිහාසයේ පිටුව තිබීම හරි ය. පිටුව ස්වයංක්රීයව යළි හරවා යැවුවහොත් ඔබ ප්රතිස්ථාපනය භාවිතා කළ යුතු අතර එමඟින් පරිශීලකයාට යළි-යොමුවීම් පිටුවට බල නොකර ආපසු බොත්තම භාවිතා කළ හැකිය.
පහත දැක්වෙන පරිදි පිටු යළි-යොමුවීමක් ක්රියාත්මක කිරීමට ඔබට මෙටා දත්ත භාවිතා කළ හැකිය.
මෙටා නැවුම්බව
<meta http-equiv="refresh" content="0;url=http://evil.com/" />
මෙටා ස්ථානය
<meta http-equiv="location" content="URL=http://evil.com" />
බේස් කොල්ලකෑම
<base href="http://evil.com/" />
ඔබගේ සැකකටයුතු සේවාදායකයා ඔවුන් යාමට අකමැති පිටුවකට හරවා යැවීමට තවත් බොහෝ ක්රම මෙම පිටුවෙන් සොයාගත හැකිය (ඔවුන්ගෙන් එක් කෙනෙක්වත් jQuery මත විශ්වාසය තබන්නේ නැත):
https://code.google.com/p/html5security/wiki/RedirectionMethods
අහඹු ලෙස හරවා යැවීමට මිනිසුන් කැමති නැතැයි මම පෙන්වා දීමට කැමැත්තෙමි. අත්යවශ්ය විටදී පමණක් ජනතාව හරවා යැවීම. ඔබ අහඹු ලෙස පුද්ගලයින් හරවා යැවීම ආරම්භ කළහොත් ඔවුන් නැවත කිසි දිනෙක ඔබේ වෙබ් අඩවියට නොයනු ඇත.
ඊළඟ ඡේදය උපකල්පිත ය:
අනිෂ්ට වෙබ් අඩවියක් ලෙසද ඔබට වාර්තා විය හැකිය. එය සිදුවුවහොත්, පුද්ගලයින් ඔබේ වෙබ් අඩවියට සබැඳියක් ක්ලික් කළ විට පරිශීලකයින්ගේ බ්රව්සරය ඔබේ වෙබ් අඩවිය අනිෂ්ට යැයි අනතුරු අඟවනු ඇත. ඔබේ වෙබ් අඩවියේ මිනිසුන් නරක අත්දැකීමක් වාර්තා කරන්නේ නම් සෙවුම් යන්ත්ර ඔබේ ශ්රේණිගත කිරීම අතහැර දැමිය හැකිය.
යළි-යොමුවීම් පිළිබඳ ගූගල් වෙබ්මාස්ටර් මාර්ගෝපදේශ සමාලෝචනය කරන්න:
https://support.google.com/webmasters/answer/2721217?hl=en&ref_topic=6001971
මෙන්න ඔබව පිටුවෙන් පන්නා දැමූ විනෝදජනක කුඩා පිටුවක්.
<!DOCTYPE html>
<html>
<head>
<title>Go Away</title>
</head>
<body>
<h1>Go Away</h1>
<script>
setTimeout(function(){
window.history.back();
}, 3000);
</script>
</body>
</html>
ඔබ පිටු දෙකේ උදාහරණ එකට සංයෝජනය කළහොත් ඔබට ළදරු නැවත සකස් කිරීමේ ලූපයක් ඇති අතර එමඟින් ඔබේ වෙබ් අඩවිය නැවත කිසි විටෙකත් භාවිතා කිරීමට ඔබේ පරිශීලකයාට අවශ්ය නොවන බවට සහතික වනු ඇත.