Avatar billede nissetec Nybegynder
15. september 2004 - 14:51 Der er 12 kommentarer og
1 løsning

Automatisk definition af mouseover

Hej

Jeg ved ikke, om man kan det her. Men jeg er ud efter et script, hvor man kan definere mouseover-event i <head>, altså uden at skulle skrive <td onmouseover="en.anden(baggrundsfarve);" ....>

En funktion, som ligesom i CSS angiver egenskaber for en tabelcelle udelukkende fra HEAD.

Er det muligt? Eller vrøvler jeg...

Per
Avatar billede grunken Nybegynder
15. september 2004 - 14:59 #1
Ja det er det da :o)

<script type="text/javascript">

var ie = (document.all&&!window.opera)?1:0;

window.onload = function(){
el = document.getElementById("dentd")

if(ie)
  el.attachEvent("onmouseover",noget);
else
  el.addEventListener('mouseover',noget,false);
}

function noget(){
alert('hej');
}

</script>

<table>
<tr>
  <td id="dentd">
  blablablabla
  </td>
</tr>
</table>

<table>
<tr>
  <td id="dentd">
  blablablabla
  </td>
</tr>
</table>
Avatar billede grunken Nybegynder
15. september 2004 - 15:00 #2
Whoops - slet lige den nederste table, copy/paste fejl :o)
Avatar billede roenving Novice
15. september 2004 - 15:02 #3
-- og faktisk kan man tillade sig en endnu mere direkte vej:

window.onload = function(){
  document.getElementById('dentd').onmouseover = function(){
    alert('hej');
  }
}
Avatar billede ldanielsen Nybegynder
15. september 2004 - 15:05 #4
Sådan:
<html>
<head>
<SCRIPT LANGUAGE=javascript>
function init(){
  document.getElementById("tester").onmouseover = myHandler
  }

function myHandler(){
  alert("Hej med dig")
  }

</SCRIPT>
</head>
<body onLoad="init();">

<table>
  <tr>
    <td id="tester">Hej</td>
  </tr>
</table>

</body>
Avatar billede ldanielsen Nybegynder
15. september 2004 - 15:05 #5
ups!
Avatar billede roenving Novice
15. september 2004 - 15:10 #6
-- og man skal måske tilføje, at grunkens metode principielt bør være rigtigere, mens den mere direkte metode, som både ldanielsens og min er eksempler på, har en større chance for at virke cross-browser i dagens globale landsby !-)
Avatar billede grunken Nybegynder
15. september 2004 - 15:17 #7
Korrekt Jes - men jeg vil dog mene at alle de browsere der understøtter w3's metoder (efterhånden alle) har en chance ;o) - at så ie som altid er specielle, er en anden historie ;o) - men hvis alt andet fejler kan man jo tilføje din udemærkede skitse :o)

- og vi må hellere give et helt script så der er noget at forholde sig til ;o)

<script type="text/javascript">
var ie = (document.all&&!window.opera)?1:0;

window.onload = function(){
el = document.getElementById("dentd")

if(ie){
  el.attachEvent("onmouseover",ind);
  el.attachEvent("onmouseout",ud);}
else{
  el.addEventListener('mouseover',ind,false);
  el.addEventListener('mouseout',ud,false);}
}

function ind(){
  e = (ie)?event.srcElement:this
  e.style.backgroundColor = "#ccc";
}

function ud(){
  e = (ie)?event.srcElement:this
  e.style.backgroundColor = "#fff";
}
</script>

<table>
<tr>
  <td id="dentd">
  blablablabla
  </td>
</tr>
</table>
Avatar billede nissetec Nybegynder
15. september 2004 - 15:25 #8
Jaaaamen, det er jo så smukt så jeg er helt rørt...
...og en anelse i vildrede, for hvordan fordeler jeg pointene; retfærdigvis?

Jeg faldt for grunkens seneste indlæg 15:17:51
Avatar billede grunken Nybegynder
15. september 2004 - 15:33 #9
alle har smidt virksomme kommentarer - så det burde vel være 1/3 points til hver - eller er jeg helt galt på den ? ;o)
Avatar billede grunken Nybegynder
15. september 2004 - 15:34 #10
(det kræver så lige at du afventer svar fra de andre 2 kloge hoveder ;o))
Avatar billede nissetec Nybegynder
15. september 2004 - 15:35 #11
Jeg er helt enig med dig. Vi venter... :)
Avatar billede ldanielsen Nybegynder
15. september 2004 - 15:42 #12
jeg afstår
Avatar billede nissetec Nybegynder
15. september 2004 - 16:00 #13
> grunken
Det var dit svar, der hjalp mig. Tak for det.

Og tak til resten for ivrig deltagelse ;)
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