Tja Jag lyckades göra ett eget javascript. använd .indexOf() som retunerar var den hittar den strängen du söker på; ex: Mjaa, det är väl i princip vad den gör just nu. Förstår inte riktigt hur man ska kunna kolla ifall dom "stavar fel" med hjälp av det.. Om man inte gör en if sats för varje möjlig stavning förståss :P Kolla om den innehåller ":" eller "//" men ändå inte "http://" i början, då är det hyffsat säkert en felstavning. Om du inte har tänkt att tex kunna besöka sidor på andra portar (http://www.exempel.com:8080). Funkar bra :)egen "address bar" på en sida
Jag skulle vilja göra som en egen "address bar" på min sida, alltså ett text fält där man kan skriva in valfri address klicka på "go" och så laddas den sidan i en frame.
Tex jag skriver in www.google.com trycker på "go" så kommer google fram i en frame på min sida.
Finns det något smidigt sätt att göra detta? kanske nåt lätt javascript?
Hoppas ni förstår hur jag menar!Sv: egen "address bar" på en sida
<script type="text/javascript">
function goToURL(form) {
query = form.query.value;
result = query.search("http://");
if(query == null || query == "") {
alert("Error: Missing URL");
return false;
}
if(result == -1) {
add = "http://";
query = add + query;
}
parent.main.location.href = query;
return false;
}
</script>
Jag hämtar värder från strängen, om det är null skriver jag ett felmeddelande. Sen kollar jag ifall http:// finns med om inte så lägger jag till det. Sen laddar jag sidan i framen main.
och i <body>
<code>
<form onsubmit="return goToURL(this)" action="">
<input name="query" type="text" size="50" maxlength="255" value="" />
<input type="submit" value="go"style="border:1px dashed #000000;" />
</form>
</code>
Finns en nackdel, om nån skulle råka skriva t.ex "http:/www.google.com" så lägger den till http:// och strängen blir "http://htp:/www.google.com". Om nån har nåt tips för hur man löser det vore jag tacksam :)
Rickard
Sv:egen "address bar" på en sida
"min anka".indexOf("anka") kommer returnera 4 tror jag (kommer inte ihåg hur javascript kör sina index..)
Om den inte hittar alls så har ajg för mig att den returnerar -1.
En annan variant, som nog är bättre, är att du använder substr eller vad den nu heter och plockar ut första biten, och kollar ifall det är http://Sv: egen "address bar" på en sida
Sv:egen "address bar" på en sida
ThomasSv:egen "address bar" på en sida
Såhär ser scriptet ut nu, kommer ni på mer som kan förbättras får ni gärna påpeka det. Dock kan jag inte mycket mer javascript än såhär :P
Det ultimata skulle väl vara att gör det med regexp, om nån vet hur man gör?
<script type="text/javascript">
function goToURL(form) {
query = form.query.value;
result = query.search("http://");
kolon = query.search(":");
slash = query.search("//");
if(query == null || query == "") {
alert("Error: Missing URL");
return false;
}
if(kolon != -1 && result == -1 || slash != -1 && result == -1) {
alert("Error: Misspelled protocol");
return false;
}
if(result == -1) {
add = "http://";
query = add + query;
}
parent.main.location.href = query;
return false;
}
</script>