Avatar billede fritz-79th Nybegynder
14. april 2003 - 12:34 Der er 8 kommentarer og
1 løsning

preload > styles

Jeg er interesseret i at få fuld kontrol ocver mine submit-knapper
og er indtil videre kommet op med følgende:


<script language="JavaScript" type="text/javascript">
ns = (document.layers) ? 1:0;
function preload(){
  for (var i=0; i<arguments.length; i++)
  {
    eval(arguments[i]+' = new Image()')
    eval(arguments[i]+'.src = "grafik/'+arguments[i]+'.gif"')
  }
}

preload('ok2_over','ok2_op')

function submit_over(name)
{
if (ns) document.layers[''+name].background = "url("+ok2_over+")";
  else document.all[''+name].style.background = "url("+ok2_over+")";
}

</script>
<style type="text/css">
#submitknap {
        border: 0px none;
        height: 18px;
    width: 59px;
    background-image: url("grafik/ok_op.gif");
}
</style>

<body.....>

<form name="form1" method="post" action="nyside.asp">
<input type="submit" name="Submit" value="" onmouseover="submit_over('submitknap')" id="okknap" />
<input type="text" name="navn" size="15" id="tekstfelt" />
</form>


Problemet som det vel kan ses, er at jeg ikke kan loade mine billedeobjekter ind i mine styles.
Hvad gør jeg galt, og kan det overhovdet løses på den måde?

mvh/
Avatar billede mikmakmuk Nybegynder
14. april 2003 - 12:53 #1
Du kunne gøre noget i den her stil. Er det rigtigt forstået at set du vil opnå er at skifte stylen på knappen

<style type="text/css">
.knapHover {
    border: 0px none;
    height: 18px;
    width: 59px;
    background-image: url("grafik/ok_op.gif");
}
</style>

<input type='button' value="vaerdi" onmouseover="this.className = 'knapHover';">
Avatar billede fritz-79th Nybegynder
14. april 2003 - 13:15 #2
Det er rigtigt forstået. Men problemet er vel at billedet jeg skifter til ved onmouseover netop ikke er preloadet, hvilket jeg ikke er interesseret i. ;]
Avatar billede mikmakmuk Nybegynder
14. april 2003 - 13:20 #3
Du vil have at dine billeder til dine knapper er preloaded
Avatar billede fritz-79th Nybegynder
14. april 2003 - 13:24 #4
Præsis.
Sorry det rodet svar før
Avatar billede mik28 Seniormester
14. april 2003 - 13:28 #5
Jeg syntes da ikke at det ikke var et rodet svar :-)
Avatar billede mikmakmuk Nybegynder
14. april 2003 - 13:36 #6
Hvad med noget i den her stil

//Pre-cache images
var Images = new Array();
for (i=0;i<Antallet_af_dine_billeder-1;i++) {
  offImages[i] = new Image();
  offImages[i].src = "image"+(i+1)+".gif";
}
Avatar billede fritz-79th Nybegynder
14. april 2003 - 13:51 #7
Jo tak. Jeg skulle dog mene at jeg allerede har proloadet menie billeder.
Det er i følgende funktion der går noget galt:

function submit_over(name)
{
if (ns) document.layers[''+name].background = "url("+ok2_over+")";
  else document.all[''+name].style.background = "url("+ok2_over+")";
}

mvh/
Avatar billede fritz-79th Nybegynder
14. april 2003 - 17:10 #8
Sikke noget crap jeg har rodet mig ud i her...... :/
-jeg har fundet på noget andet
Avatar billede fritz-79th Nybegynder
16. april 2003 - 11:59 #9
Til de af jer som eventuelt har fulgt med i dette spørgsmål, er følgende hvad jeg kom frem til.

<script language="JavaScript" type="text/javascript">
ns = (document.layers) ? 1:0;

function preload(imgObj,imgSrc) {
    if (document.images) {
        eval(imgObj+' = new Image()')
        eval(imgObj+'.src = "'+imgSrc+'"')
    }
}

preload('ok2_over','grafik/ok2_over.gif')
preload('ok2_op','grafik/ok2_op.gif')

function submit_over(name,imgObj) {
if (ns) document.layers[''+name].backgroundImage = "url("+eval(imgObj+".src")+")";
  else document.all[''+name].style.backgroundImage = "url("+eval(imgObj+".src")+")";
}

function submit_out(name,imgObj) {
if (ns) document.layers[''+name].backgroundImage = "url("+eval(imgObj+".src")+")";
  else document.all[''+name].style.backgroundImage = "url("+eval(imgObj+".src")+")";
}
</script>

<style type="text/css">
#submitknap {
        border: 0px none;
        height: 18px;
        width: 59px;
        background-image: url("grafik/ok2_op");
}
</style>
</head>
<body>
<form name="form1" method="post" action="nyside.asp">
<input type="submit" name="Submit" value="" onmouseover="submit_over('submitknap','ok2_over')" onmouseout="submit_out('submitknap','ok2_op')" id="submitknap" />
<input type="text" name="navn" size="15" />
</form>
</body>
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