JavaScript DHTML/Window Browser/Setting

Материал из Web эксперт
Перейти к: навигация, поиск

Implementing User Preferences

/*
Mastering JavaScript, Premium Edition
by James Jaworski 
ISBN:078212819X
Publisher Sybex CopyRight 2001
*/
<HTML>
<HEAD>
<TITLE>Setting color preferences</TITLE>
<SCRIPT LANGUAGE="JavaScript"><!--
function nameDefined(c,n) {
 var s=removeBlanks(c)
 var pairs=s.split(";")
 for(var i=0;i<pairs.length;++i) {
  var pairSplit=pairs[i].split("=")
  if(pairSplit[0]==n) return true
 }
 return false
}
function removeBlanks(s) {
 var temp=""
 for(var i=0;i<s.length;++i) {
  var c=s.charAt(i)
  if(c!=" ") temp += c
 }
 return temp
}
function getCookieValue(c,n) {
 var s=removeBlanks(c)
 var pairs=s.split(";")
 for(var i=0;i<pairs.length;++i) {
  var pairSplit=pairs[i].split("=")
  if(pairSplit[0]==n) return pairSplit[1]
 }
 return ""
}
function readCookie() {
 var cookie=document.cookie
 background="white"
 text="black"
 if(nameDefined(cookie,"background"))
  background=getCookieValue(cookie,"background")
 if(nameDefined(cookie,"text"))
  text=getCookieValue(cookie,"text")
}
function setCookie() {
 var newCookie="background="+background
 newCookie += "; expires=Wednesday, 10-Nov-10 23:12:40 GMT"
 window.document.cookie=newCookie
 var newCookie="text="+text
 newCookie += "; expires=Wednesday, 10-Nov-10 23:12:40 GMT"
 window.document.cookie=newCookie
 window.location="www.wbex.ru"
}
function prefsForm() {
 document.writeln("<FORM name="prefs">")
 document.writeln("Background color: ")
 document.writeln("<SELECT name="bg" size="1">")
 document.writeln("<OPTION>black")
 document.writeln("<OPTION SELECTED>white")
 document.writeln("<OPTION>red")
 document.writeln("<OPTION>orange")
 document.writeln("<OPTION>yellow")
 document.writeln("<OPTION>green")
 document.writeln("<OPTION>blue")
 document.writeln("<OPTION>brown")
 document.writeln("</SELECT>")
 document.writeln(" Text color: ")
 document.writeln("<SELECT name="fg" size="1">")
 document.writeln("<OPTION SELECTED>black")
 document.writeln("<OPTION>white")
 document.writeln("<OPTION>red")
 document.writeln("<OPTION>orange")
 document.writeln("<OPTION>yellow")
 document.writeln("<OPTION>green")
 document.writeln("<OPTION>blue")
 document.writeln("<OPTION>brown")
 document.writeln("</SELECT>")
 document.writeln("<INPUT type="button" value="Set Colors" onClick="setPrefs()"")
 document.writeln("</FORM>")
}
function setPrefs() {
 bgField = window.document.prefs.bg
 bgIndex = bgField.selectedIndex
 background = bgField.options[bgIndex].text
 fgField = window.document.prefs.fg
 fgIndex = fgField.selectedIndex
 text = fgField.options[fgIndex].text
 setCookie()
}
// --></SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"><!--
readCookie()
document.bgColor=background
document.fgColor=text
prefsForm()
// --></SCRIPT>
<H1 ALIGN="CENTER">Setting color preferences</H1>
</body>
</HTML>