pagina openen bij tekst typen...

Status
Niet open voor verdere reacties.

vikings

Banned
Lid geworden
1 apr 2006
Berichten
477
ik ben opzoek naar een simpel scriptje die als ik wat intyp. gewoon op de pagina waar ik zit. dat er een pagina geopend wort.

bijvoorbeeld:

het script staat in het frame van het menu. en daarnaast frame [naam], moet die pagina openen als ik bijvoorbeeld het woord "home"typ
 
PHP:
<form name="f">
 <input name="t" type="text" size="24">
 <input type="button" value="->" onclick="parent.naam.location.href = document.f.t.value + '.html'">
</form>
Zo? :)


Vr.Gr. Egel.
 
daar zie ik een typ balkje...

dat hoeft er nog niet eens te staan.

gewoon een script. als ik een bepaald woort typ (wat in het script zit) bijvoorbeeld home.
dat het terug gaat naar de eerste pagina...

waar dan opgegeven kan worden in dat script.
home.html of beginpagina.htm zoiets..

geen typ vakjes.. alleen los kiksos ttypen...



zoiets als deze. probeer deze. copieer en plak in kladblok sla op als naam.html. en open typ 123450. en eer komt een tekst venster.

nu wil ik dus als ik een woord typ. een pagina laten openen...


Code:
<script language="JavaScript">
var nav=navigator.appName;
var ns=(nav.indexOf("Netscape")!=-1);

if(ns){
if(document.layers){
document.captureEvents(Event.KEYPRESS);
document.onkeypress = cheat;
}
if(document.getElementById){
document.onkeypress = cheat;
}
}
else
{document.onkeypress = cheat;}

var SpecialWord = "123450";//verander hier je geheime woord
var SpecialLetter = 0;
var vcheat = false
function cheat(keyStroke)
{
 var eventChooser = (ns)?keyStroke.which: event.keyCode;
 var which = String.fromCharCode(eventChooser).toLowerCase();
 if(which == SpecialWord.charAt(SpecialLetter)){
   SpecialLetter++;
   if (SpecialLetter == SpecialWord.length) alert("op deze manier, maar dan als een html pagina. url dus. maar\nook met framenaam waar in welk frame het moet komen.")
}
else {SpecialLetter = 0;vcheat = false}

}
</script>
 
Laatst bewerkt:
of bestaat dit niet....

??????????????????????????????

wanneer heeft iemand een goed script gevonden...
 
Ik heb even wat in elkaar gezet, volgens mij bedoel je het zo:

HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">

var pages = new Array();
pages["home"] = "index.html";
pages["informatie"] = "information.html";
pages["contact"] = "contact.html";

var destination = parent.frame2;

document.onkeypress = addletter;
var typedword = "";
function addletter(key) {
	typedword += String.fromCharCode(event.keyCode).toLowerCase();
	wordfound = false;
	for (page in pages) {
		if (page == typedword) {
			destination.location.href = pages[page];
			typedword = "";
		} else if (typedword.length > 0 && page.indexOf(typedword) == 0) {
			wordfound = true;
		}
	}
	if (!wordfound) {
		typedword = "";
	}
}

</script>
</head>

<body onload="this.focus();">
</body>
</html>
 
het werkt wel. maar na dat ik het woord typ wat ik zag in het script. krijg ik de melding. fout op de pagina

maar het is wel wat ik bedoel....
 
Dat is raar, bij mij is dat niet zo. Staat het script ergens online?
 
ik heb het als een test html pagina op mijn bureaublad gezet. als ik het open. en daarin het woord home typ of contact, informatie. krijg ik rechts onderin de melding.
Fout op de pagina.

ook als ik de file aanmaak waar het heen moet.
 
ook als het script online staat werkt he niet...



ergeste is dat er ook niks komt. niet in het frame maar ook niet als nieuw venster.....................
 
Laatst bewerkt:
Dat is raar, bij mij is dat niet zo. Staat het script ergens online?

wat doe i kdan niet goed,,

ik heb het als een test html opgeslagen. en als ik die woorden die in het script staat intyp. komt er rechts onder fout op de pagina

klik ik er op staat er

Relel29
Taken4
Fout 'destination.location' is leeg of geen object.
code0

copieer anders zels eens dat script. en maak zelf eens die html file aan. dan zien jullie het ook...

********************************, ***************************, ***********************, ****************************. **************************************


haal ik


}
if (!wordfound) {
typedword = "";
}
}

</script>
</head>

<body onload="this


dat weg (dat schuin gedrukte dikke onderstreepte), is de fout weg als ik iets typ, maar dan gebeurt er niks
 
Laatst bewerkt:
Dit werkt goed en is wat korter:
PHP:
<html>
 <head>
  <title>keyreader | Egel 070613</title>
  <script type="text/javascript">
   <!-- Egel 070613 ;)

    var destination = parent.frame2;
    var keywords = new Array('home','informatie','contact');
    var pages = new Array('index.html','information.html','contact.html');

    var typeString = '';
    function keyreader(e) {
     var keyNr = (e ? e.which : event.keyCode);
     typeString = typeString.substring(typeString.length - 23) + String.fromCharCode(keyNr).toLowerCase();
     for (var i = 0; i < keywords.length; i++) {
      if (typeString.indexOf(keywords[i]) > -1) {
       destination.location.href = pages[i];
       typeString = '';
       };
      };
     };
    document.onkeydown = keyreader;
   //-->
  </script>
 </head>
 <body>
  &nbsp;
 </body>
</html>
Maar 't kan zijn dat als het in een menu in een frameset gebruikt wordt het alleen werkt als er op het menu gefocused is. :confused: (Dan wordt 't nog even kijken hoe het het beste in het frameset zelf te plaatsen is ... )


Vr.Gr. Egel.
 
fout

ook als het online staat, de fout...
 
Laatst bewerkt:
Goed! ;) Vervang destination.location.href = pages; maar eens door alert(keywords);. :)

Dit werkt ook met een frameset (en firefox):
PHP:
<html>
 <head>
  <title>frameset keyreader | Egel 070614</title>
  <script type="text/javascript">
   <!-- Egel 070614 ;)

    var destination = 1;
    var keywords = new Array('home','informatie','contact');
    var pages = new Array('home.html','information.html','contact.html');

    function keyreader0(e) {
     check(e ? e.which : frames[0].event.keyCode);
     };
    function init0() {
     frames[0].document.onkeydown = parent.keyreader0;
     };

    function keyreader1(e) {
     check(e ? e.which : frames[1].event.keyCode);
     };
    function init1() {
     frames[1].document.onkeydown = parent.keyreader1;
     };

    var typeString = '';
    function check(nr) {
     typeString = typeString.substring(typeString.length - 23) + String.fromCharCode(nr).toLowerCase();
     for (var i = 0; i < keywords.length; i++) {
      if (typeString.indexOf(keywords[i]) > -1) {
       alert(keywords[i]); // test
       // frames[destination].location.href = pages[i];
       typeString = '';
       };
      };
     };

   // -->
  </script>
 </head>
 <frameset cols="200,*">
  <frame src="menu.html" onload="parent.init0()">
  <frame src="home.html" onload="parent.init1()">
 </frameset>
</html>
De alert is om te testen, het laden van de pagina gebeurt in de regel eronder als je de // weghaalt.

destination is het nr van het frame waarin je de pagina wilt laden, het eerste frame is 0, het tweede 1 enz..

Als je nog een derde frame gebruikt moet je daareen init2 en keyreader2 voor maken, hetzelfde als init0 en keyreader0 maar dan met een 2 ipv 0. :)


Vr.Gr. Egel.
 
die werkt ook niet...


het hoeft niet persee met frames te zijn.

die kan ik zelf in een menu ztten ht script. als ik maar wat typ. wat inhet script zit.

ik bedoel dus:


ik heb een legepagina.

ik typ daarin. "terug" (bijvoorbeeld-voorbijbeeld)

dan moet er een pagina openen. en ook nog in script opgeven in welk frame moet komen



ik heb aan de linker kant een menu. aan de rechterkant de site

als ik terug typ moet rechts nameklijk iets komen.

dus niet in het frame zelf. maar het script in het menu..

zoiets wat hierboven eerst stond, maar die werkt niet..:confused:

wat zeggen van wel...



9453foutmelding.gif




4840foutmelding code.gif
 
Laatst bewerkt:
Heb je het ergens online staan, zodat we kunnen zien dat het niet werkt?
 
Je moet er wel voor zorgen dat de variabele destination goed is!
Zo bijvoorbeeld:

HTML:
<html> 
 <head> 
  <title>keyreader | Egel 070613</title> 
  <script type="text/javascript"> 
   <!-- Egel 070613 ;) 

    var destination = window; 
    var keywords = new Array('home','informatie','contact'); 
    var pages = new Array('index.html','information.html','contact.html'); 

    var typeString = ''; 
    function keyreader(e) { 
     var keyNr = (e ? e.which : event.keyCode); 
     typeString = typeString.substring(typeString.length - 23) + String.fromCharCode(keyNr).toLowerCase(); 
     for (var i = 0; i < keywords.length; i++) { 
      if (typeString.indexOf(keywords[i]) > -1) { 
       destination.location.href = pages[i]; 
       typeString = ''; 
       }; 
      }; 
     }; 
    document.onkeydown = keyreader; 
   //--> 
  </script> 
 </head> 
 <body> 
  &nbsp; 
 </body> 
</html>
Die variabele is ervoor gemaakt om zelf in te vullen, je moet daar de naam van het frame invullen als je frames gebruikt, en als je met een enkel venster werkt vul je er window in, zoals hier is gedaan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan