/ 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
Resize - til indre mål
Fra : Erik Ginnerskov


Dato : 15-09-05 20:38

Hej NG

Under forudsætning, at browseren ikke er sat op til at blokere for den
slags, er det ingen sag at resize browservinduet til ydre mål:

onclick="window.resizeTo(800, 600)"

Men jeg har brug for at kunne resize til indre mål (for at teste mod
handheld):

onclick="window.resizeTo(240, 320)"

Hvordan skal syntaksen være for at opnå dette?

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



 
 
Jens Gyldenkærne Cla~ (15-09-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-09-05 21:42

Erik Ginnerskov skrev:

> Men jeg har brug for at kunne resize til indre mål (for at
> teste mod handheld):
>
> onclick="window.resizeTo(240, 320)"

Jeg tror ikke at du kan sætte et indre mål direkte, men du kan
aflæse det indre og det ydre mål, og på den måde regne ud hvad du
skal sætte det ydre mål til for at opnå den ønskede størrelse.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Erik Ginnerskov (15-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 15-09-05 22:35

Jens Gyldenkærne Clausen wrote:

> Jeg tror ikke at du kan sætte et indre mål direkte, men du kan
> aflæse det indre og det ydre mål, og på den måde regne ud hvad du
> skal sætte det ydre mål til for at opnå den ønskede størrelse.

Jeg synes ellers, jeg en gang har set et script, der kunne. Den gang havde
jeg bare ikke tanke på, at det kunne være anvendeligt, så jeg aner ikke hvor
jeg så det. ;(

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



Ryan Kristensen (15-09-2005)
Kommentar
Fra : Ryan Kristensen


Dato : 15-09-05 23:46

On Thu, 15 Sep 2005 21:38:13 +0200, Erik Ginnerskov
<erik@donotspammmeplease.invalid> wrote:

> Men jeg har brug for at kunne resize til indre mål (for at teste mod
> handheld):
>
> onclick="window.resizeTo(240, 320)"
>
> Hvordan skal syntaksen være for at opnå dette?

Jeg tror ikke der er nogen direkte måde at ændre på de indre mål, men du
kan - ved hjælp af en løkke - lade vinduet blive justeret, så det kommer
til at passe.
function resize(w,h) {
var root =
document.compatMode=="CSS1Compat"?document.documentElement:document.body;
var defaultWidth = w;
var defaultHeight = h;
while (root.clientWidth!=w || root.clientHeight!=h) {
if (root.clientWidth<w) {defaultWidth+=1;}
if (root.clientWidth>w) {defaultWidth-=1;}
if (root.clientHeight<h) {defaultHeight+=1;}
if (root.clientHeight>h) {defaultHeight-=1;}
window.resizeTo(defaultWidth, defaultHeight);}
}

Men hvorfor bruger du ikke bare Operas "small screen" funktion?

--
Ryan Kristensen

Lasse Reichstein Nie~ (16-09-2005)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 16-09-05 16:53

"Ryan Kristensen" <ryankristensen@hotmail.invalid> writes:

> Jeg tror ikke der er nogen direkte måde at ændre på de indre mål, men
> du kan - ved hjælp af en løkke - lade vinduet blive justeret, så det
> kommer til at passe.

Det ser sikkert vældig kønt ud at det "zoomer", men det kan klares med
to resizer.
---
function getWinSize() {
// se: http://jibbering.com/faq/#FAQ4_9
if (typeof window.innerWidth == "number") {
return [window.innerWidth, window.innerHeight];
} else {
var root = (document.compatMode == "CSS1Compat")?
document.documentElement: document.body;
return [root.clientWidth, root.clientHeight];
}
}

function resize(w,h) {
window.resizeTo(w,h);
var wh = getWinSize();
window.resizeTo(2*w-wh[0], 2*h-wh[1]);
}
---

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Erik Ginnerskov (16-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 16-09-05 21:35

Lasse Reichstein Nielsen wrote:

> det kan klares med
> to resizer.
> ---
> function getWinSize() {
> // se: http://jibbering.com/faq/#FAQ4_9
> if (typeof window.innerWidth == "number") {
> return [window.innerWidth, window.innerHeight];
> } else {
> var root = (document.compatMode == "CSS1Compat")?
> document.documentElement: document.body;
> return [root.clientWidth, root.clientHeight];
> }
> }
>
> function resize(w,h) {
> window.resizeTo(w,h);
> var wh = getWinSize();
> window.resizeTo(2*w-wh[0], 2*h-wh[1]);
> }

Det fungerer præcis som ønsket. Tak Lasse.

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



Ryan Kristensen (16-09-2005)
Kommentar
Fra : Ryan Kristensen


Dato : 16-09-05 23:21

On Fri, 16 Sep 2005 17:53:12 +0200, Lasse Reichstein Nielsen
<lrn@hotpop.com> wrote:

> Det ser sikkert vældig kønt ud at det "zoomer", men det kan klares med
> to resizer.
[SNIP]
> window.resizeTo(2*w-wh[0], 2*h-wh[1]);

Selvfølgelig. - Smart.

--
Ryan Kristensen

Erik Ginnerskov (16-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 16-09-05 21:19

Ryan Kristensen wrote:

> function resize(w,h) {
> var root =
> document.compatMode=="CSS1Compat"?document.documentElement:document.body;
> var defaultWidth = w;
> var defaultHeight = h;
> while (root.clientWidth!=w || root.clientHeight!=h) {
> if (root.clientWidth<w) {defaultWidth+=1;}
> if (root.clientWidth>w) {defaultWidth-=1;}
> if (root.clientHeight<h) {defaultHeight+=1;}
> if (root.clientHeight>h) {defaultHeight-=1;}
> window.resizeTo(defaultWidth, defaultHeight);}
> }

Det virkede da, men den var ret længe om at finde størrelsen.

> Men hvorfor bruger du ikke bare Operas "small screen" funktion?

Fordi den ikke virker, når jeg ser siden i Firefox. ;)

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



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

Månedens bedste
Årets bedste
Sidste års bedste