編程(Programming)是編定程序的中文簡稱,就是讓計算機代碼解決某個問題,對某個計算體系規(guī)定一定的運算方式,使計算體系按照該計算方式運行,并最終得到相應結果的過程。為了使計算機能夠理解(understand)人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據(jù)人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是編程。 【實例名稱】 通過JS記錄滾動條位置 【實例描述】 當頁面刷新時窗體中所有的內容會被重新初始化,但一些讀書網(wǎng)站為了還原用戶刷新前查看的內容,必須記錄窗體滾動條的位置。本例介紹如何記錄滾動條的位置。 【實例代碼】 <HTML>
<HEAD>
<TITLE> 記錄滾動條位置 -本站(www.xue51.com)</title>
<script language="javascript">
function SetCookie(sName, sValue)
{
date = new Date();
s = date.getDate();
date.setDate(s+1); //設置cookie的有效期
document.cookie = sName + "=" + escape(sValue) + ";
expires=" + date.toGMTString();//創(chuàng)建cookie
}
function GetCookie(sName)
{
var aCookie = document.cookie.split("; ");
//將cookie中的數(shù)據(jù)切割成數(shù)組,方便遍歷
for (var i=0; i < aCookie.length; i++)
//遍歷cookie中的數(shù)據(jù)
{
var aCrumb = aCookie[i].split("=");
//將鍵和值分開
if (sName == aCrumb[0]) {
//判斷是否是指定的鍵
return unescape(aCrumb[1]);}
//返回鍵對應的值
}
return null;
}
function winLoad()
{
document.body.scrollLeft = GetCookie("scrollLeft");
//獲取水平滾動條位置
document.body.scrollTop = GetCookie("scrollTop");
//獲取垂直滾動條位置
}
function winUnload()
{
SetCookie("scrollLeft", document.body.scrollLeft)
//保存水平滾動條位置
SetCookie("scrollTop", document.body.scrollTop)
//保存垂直滾動條位置
}
window.onload = winLoad;
//加載頁面時自動執(zhí)行獲取cookie保存值的方法
window.onunload = winUnload;
//關閉頁面時自動執(zhí)行保存cookie的方法
</script>
</HEAD>
<BODY>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
測試行,主要為了出線滾動條<p></p>
</BODY>
</HTML>
【運行效果】  【難點剖析】 本例的重點是如何保存滾動條的位置。頁面中的滾動條分為水平滾動條和垂直滾動條。水平滾動條的位置使用“document.body.scrollLeft”獲取,垂直滾動條的位置使用“document.body.scrollTop”獲取。保存滾動條位置使用的是Cookie,關于Cookie的操作可參考代碼中的“SetCookie”和“GetCookie”方法。 【源碼下載】 為了JS代碼的準確性,請點擊:通過JS記錄滾動條位置 進行本實例源碼下載
使用編程語言寫的程序,由于每條指令都對應計算機一個特定的基本動作,所以程序占用內存少、執(zhí)行效率高。 |