/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Windows default beep v. ENTER (key=13) i I~
Fra : Claus Rasmussen


Dato : 20-12-05 13:53

Hej NG

Jeg har en lille udfordring med at fjerne et irriterende beep
(Windows default beep lyd) når man i en form trykker ENTER i et
af INPUT felterne.
Jeg har et script der checker om der er trykket ENTER når man
står i et af INPUT felterne og så submitter formen (se nedenfor).
Problemet er blot at når dette sker, så aktiveres Windows Default
Beep lyden.
Er der nogen af jer der har kendskab til hvorfor dette sker og
evt. om man kan omgå dette?
Jeg ved hvordan man omgår det som bruger, da man blot kan 1)
fjerne Windows Default Beep lyden eller 2) lave det om i
Registreringsdatabasen. Men når det er en hjemmeside, så har man
jo af gode grunde ikke adgang til dette!

Håber i kan hjælpe
På forhånd tak.

/Claus


//************ Script til at submitte en form v. ENTER

var isNetscape = false;
var isIE = false;
var isWhoKnows = false;

//This determines which browser the user is using
if (parseInt(navigator.appVersion) >= 4)
{
if(navigator.appName == "Netscape")
isNetscape = true;
else if (navigator.appName == "Microsoft Internet Explorer")
isIE = true;
else
isWhoKnows = true;
}

//This stuff captures the events of the user
if(isNetscape)
document.captureEvents(Event.KEYUP);

document.onkeyup = checkValue

function checkValue(evt)
{
var theButtonPressed;
if (isNetscape)
theButtonPressed = evt.which;
else if(isIE)
theButtonPressed = window.event.keyCode;
else if(isWhoKnows)
alert("Please hit the submit button to process form");

if (theButtonPressed == 13)
if (SetSearchValues())
document.searchForm.submit();
}

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Erik Ginnerskov (21-12-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 21-12-05 00:17

Claus Rasmussen wrote:

> Jeg ved hvordan man omgår det som bruger, da man blot kan 1)
> fjerne Windows Default Beep lyden eller 2) lave det om i
> Registreringsdatabasen. Men når det er en hjemmeside, så har man
> jo af gode grunde ikke adgang til dette!

Af samme grund bør du ikke begynde at pille ved det. Måske dine brugere
forventer den lyd. Dit ønske svarer til nogle webdesigneres ønske om at
farve scrollbaren, så den næsten ikke er til at få øje på.

Det er funktionaliteten i brugerens browser, du vil gribe ind i - lad være.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Claus Rasmussen (22-12-2005)
Kommentar
Fra : Claus Rasmussen


Dato : 22-12-05 08:56

> > Jeg ved hvordan man omgår det som bruger, da man blot kan 1)
> > fjerne Windows Default Beep lyden eller 2) lave det om i
> > Registreringsdatabasen. Men når det er en hjemmeside, så har man
> > jo af gode grunde ikke adgang til dette!
>
> Af samme grund bør du ikke begynde at pille ved det. Måske dine brugere
> forventer den lyd. Dit ønske svarer til nogle webdesigneres ønske om at
> farve scrollbaren, så den næsten ikke er til at få øje på.
>
> Det er funktionaliteten i brugerens browser, du vil gribe ind i - lad være.
>
Hej Erik

Jeg gi'r dig fuldstændig ret i at man ikke skal pille ved funktionaliteten i
brugerens browser. Det var heller ikke det jeg lige mente, så jeg må ha'
beskrevet problemet forkert

Men ikke nok med det, så har jeg faktisk selv fundet løsningen til problemet!
For det første, skal funktionen kaldes ved et onkeypress på input felterne med
input feltet (this) og eventet som parametre, samt at der i linien:
document.searchForm.submit();
skal tilføjes en
return false;
Så forstår Windows at handlingen ikke er gal og vil derved ikke advare med en
Windows default beep lyd!

Hilsen
Claus

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Erik Ginnerskov (24-12-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 24-12-05 01:58

Claus Rasmussen wrote:

> Men ikke nok med det, så har jeg faktisk selv fundet løsningen til
> problemet! For det første, skal funktionen kaldes ved et onkeypress
> på input felterne med input feltet (this) og eventet som parametre,
> samt at der i linien: document.searchForm.submit();
> skal tilføjes en
> return false;
> Så forstår Windows at handlingen ikke er gal og vil derved ikke
> advare med en Windows default beep lyd!

Jamen, hvis din formular får Windows til at sige noget, må der være en fejl
i dit script. Det er ikke normalt, at submit af en formular får Windows til
at 'snakke'.

Du skal i stedet finde ud af, hvorfor Windows advarer om fejl og rette
fejlen.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Peter Lykkegaard (24-12-2005)
Kommentar
Fra : Peter Lykkegaard


Dato : 24-12-05 13:11

"Erik Ginnerskov" wrote

> Jamen, hvis din formular får Windows til at sige noget, må der være en
> fejl
> i dit script. Det er ikke normalt, at submit af en formular får Windows
> til
> at 'snakke'.
>
Jow ganske normalt hvis man hiver fat i et keyEnter event og laver lidt på
denne

> Du skal i stedet finde ud af, hvorfor Windows advarer om fejl og rette
> fejlen.
>
Det gøres ved at "cleare" keyevent som Claus har beskrevet

- Peter



Peter Lykkegaard (21-12-2005)
Kommentar
Fra : Peter Lykkegaard


Dato : 21-12-05 18:35

"Claus Rasmussen" wrote
>
> Jeg har en lille udfordring med at fjerne et irriterende beep
> (Windows default beep lyd) når man i en form trykker ENTER i et
> af INPUT felterne.
> Jeg har et script der checker om der er trykket ENTER når man
> står i et af INPUT felterne og så submitter formen (se nedenfor).
> Problemet er blot at når dette sker, så aktiveres Windows Default
> Beep lyden.

Jeg bruger den i forb med at der gennemføres et specifikt event i forb med
Enter

function myKeyDown(button,eventtype) {
var control;
if (window.event && window.event.keyCode == 13) {
window.event.keyCode = 0;
control = document.getElementById(button);
if (!(typeof control=='undefined')) {
control.fireEvent(eventtype);
}
return false;
}
else {
return true;
}
}

- Peter



Søg
Reklame
Statistik
Spørgsmål : 177553
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste