Avatar billede alvion Nybegynder
28. juni 2001 - 22:04 Der er 12 kommentarer og
1 løsning

Kan et IE5 vindue gøres \"always on top\"?

Hvis jeg vha. Javascript åbner et nyt vindue med \"window.open()\" er der så nogen mulighed for at gøre dette nye vindue \"always on top\"?

Løsningen skal blot virke i Internet Explorer 5.0 og opefter, og om det er parametre til window.open() eller vha. stylesheets er ligegyldigt.

Jo en ting mere: Jeg har selv eksperimenteret med \"ShowModalDialog()\", og det er ikke det jeg ønsker.
Avatar billede minijensen1 Nybegynder
28. juni 2001 - 22:10 #1
Prøv med
<script language=\"JavaScript\">
setTimeOut(\"window.focus()\", 10)
</script>
Avatar billede engrob Nybegynder
28. juni 2001 - 22:13 #2
Måske ville setInterval(\"self.focus()\",10) virke bedre
Avatar billede minijensen1 Nybegynder
28. juni 2001 - 22:16 #3
engrob >> Det har du da vist nok ret i.. Jeg har vist ikke ret meget styr på min JavaScript funktioner og variabler lige nu..  :(
Avatar billede jakoba Nybegynder
28. juni 2001 - 22:16 #4
en lidt nemmere en.
i dit body tag i den fil det vises i vinduet:
<body ... onblur=\"self.focus();\">

i praksis er det møjirriterende for brugeren der tror winduet overholder normale windows regler og prøver at hive sin notepad frem for at skrive lidt i.

mvh JakobA
Avatar billede alvion Nybegynder
28. juni 2001 - 22:27 #5
JakobA -> Jeg er enig i, at under normale omstændigheder vil en sådan opførsel fra et vindue føles rigtig træls (for at bruge et udtryk fra min hjemstavn). I dette tilfælde vil det dog fungere som en hjælp for brugeren.

Jeg arbejder med et administrationsværktøj, hvor al redigering af f.eks. en database-post foregår i et popupvindue. Man vælger sin post på en liste i hovedvinduet. Vinduet popper op, man redigerer indholdet, trykker \"Gem\", vinduet lukker og listen opdateres i hovedvinduet for at reflektere ændringerne.

Nu er det bare lige sådan, at jeg har nogle novicebrugere, som ved et uheld trykker på hovedvinduet, og så ikke længere kan finde popupvinduet...

Jeg vil prøve din løsning, den vil umiddelbart fungere bedst (tror jeg).

Eneste problem jeg ser er, at det ikke er rigtig \"always on top\" opførsel. Vinduet skal være øverst, men det skal ikke stjæle fokus, med mindre man eksplicit klikker på det.

Kan man det? Findes der en ´\"bringToFront()\", som man kan bruge istedet for \"focus()\"?
Avatar billede alvion Nybegynder
28. juni 2001 - 22:47 #6
Nu har jeg eksperimenteret lidt med \"focus()\", og jeg tror faktisk at den løser mit problem - så point til dig JakobA. Men hvis du skulle falde over en løsning på det jeg beskriver ovenfor, så tøv ikke med at fortælle det :-)
Avatar billede jakoba Nybegynder
29. juni 2001 - 01:50 #7
jeg kender ikke en løsning der gør sådan, men den er klart værd at lede efter så jeg vil holde øjnene åbne.

mvh JakobA
Avatar billede jakoba Nybegynder
29. juni 2001 - 02:07 #8
Den findes !!!
<body  ...  onload=\"setZOptions(\'alwaysRaised\');\">

Den kræver godtnok  UniversalBrowserWrite , men du lyder somom det er til et intranet så det skulle nok være til at få.

Netscapes beskrivelse i clientreference:

setZOptions

Specifies the z-order stacking behavior of a window.
Method of        window
Implemented in  JavaScript 1.2

Syntax            setZOptions(windowPosition)

Parameters
windowPosition

              A string evaluating to any of the following values:

                  \"alwaysRaised\" creates a new window that floats
                  on top of other windows, whether it is active or
                  not.

                  alwaysLowered creates a new window that floats
                  below other windows, whether it is active or not.

                  z-lock creates a new window that does not rise
                  above other windows when activated.


Security

To set this property, you need the UniversalBrowserWrite privilege.
For information on security, see the Client-Side JavaScript Guide.

Description

By default, a Navigator window rises to the top of the z-order when it is
activated and moves down in the z-order as other windows are activated.
With the setZOptions method, you can explicitly specify a window\'s
position in the z-order.

If you do not specify an argument for setZOptions, this method restores
the default z-order stacking behavior of a Navigator window.

You can also specify the order stacking behavior of a window at the time
you create it when you use the window.open method.
Avatar billede jakoba Nybegynder
29. juni 2001 - 02:11 #9
i window.open kaldet kan det gøres med  alwaysRaised=yes,  i featurelisten


alwaysRaised    (JavaScript 1.2) If yes, creates a new window that
                floats on top of other windows, whether it is active
                or not. This is a secure feature and must be set in
                signed scripts.
Avatar billede alvion Nybegynder
29. juni 2001 - 10:09 #10
Hmm... Det er noget pis med den sikkerheds-klausul. Det er nemlig ikke et intranet, men et CMS som kører fra en - for brugeren - ekstern webserver. Jge tror ikke at jeg kan overbevise mine brugere om, at de skal ændre på deres sikkerhedsinstillinger overfor denne server, det vil kræve lidt mere end de er i stand til.
Avatar billede jakoba Nybegynder
29. juni 2001 - 11:52 #11
så er der signed scripts tilbage. har i råd til at få en signatur?
Avatar billede alvion Nybegynder
29. juni 2001 - 15:23 #12
Hmm det er ikke umuligt... Hvad koster sådan en?
Avatar billede jakoba Nybegynder
02. juli 2001 - 23:50 #13
Desværre. det er ikke noget der har været aktuelt for mig. Men jeg kan da gi dig et par links:

signing og certificates.
http://developer.netscape.com/docs/manuals/signedobj/trust/index.htm

certificate authorities
http://csrc.nist.gov/welcome.html

banzai. en regederlig liste:
http://www.pkiguru.com/certauth.htm

\'http://ice-tel.uni-c.dk/dk-ca/\'  sågar en dansk en

mvh JakobA
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester