Avatar billede herchin Nybegynder
12. september 2001 - 10:42 Der er 25 kommentarer og
2 løsninger

Hjææælp.... object-tag og events

Hvorfor virker mit onclick-event ikke, når onfocus virker fint???

<object id=\"oCondition\" width=\"100%\" height=\"172\" type=\"text/x-scriptlet\" data=\"condition.htm\" style=\"border: 1px solid\" onfocus=\"alert(\'Focus\')\" onclick=\"alert=\'Click\'\"></object>
Avatar billede jakoba Nybegynder
12. september 2001 - 10:46 #1
fordi du oprette en variabel der hedder alert istedet for at kalde funktionen alert.

<object id=\"oCondition\" width=\"100%\" height=\"172\" type=\"text/x-scriptlet\" data=\"condition.htm\" style=\"border: 1px solid\" onfocus=\"alert(\'Focus\')\" onclick=\"alert(\'Click\')\"></object>
Avatar billede herchin Nybegynder
12. september 2001 - 10:54 #2
Nu har jeg lavet følgende, men det virker heller ikke! (Fjernet onfocus og styles!)

<object id=\"oCondition\" width=\"100%\" height=\"172\" type=\"text/x-scriptlet\" data=\"condition.htm\" onclick=\"alert(\'Click\')\"></object>
Avatar billede roenving Novice
12. september 2001 - 12:14 #3
Fatter ik\' at du kan få onFocus til at fungere, men ikke onClick, men bare for at gå lidt ind i debuggingen:
onclick=\"alert(\'Click\');\"

hth
jes
Avatar billede herchin Nybegynder
12. september 2001 - 12:28 #4
Sorry Jes ;o(
Avatar billede roenving Novice
12. september 2001 - 12:31 #5
Og den der condition.htm den fanger ikke selv clicks??
Avatar billede herchin Nybegynder
12. september 2001 - 12:36 #6
I kan prøve selv med hele koden: Prøv at skifte onclick med onfocus! I kan også prøve at fjerne condition.htm delen. Det hjælper ikke ;o(

<html>
<head>
</head>
<body>
  <object id=\"oCondition\" width=\"100%\" height=\"51\" type=\"text/x-scriptlet\"  data=\"condition.htm\" style=\"border: 1px solid\" onclick=\"alert(\'Click\');\"></object>
</body>
</html>
Avatar billede herchin Nybegynder
12. september 2001 - 12:38 #7
Events der virker: onmouseover, onmouseout, onfocus og mange flere.

Events der ikke virker: ondblclick, onclick og sikkert flere
Avatar billede jakoba Nybegynder
12. september 2001 - 12:51 #8
ufølge w3schools.org skulle <object håndtere følgende:

onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup

Så det må enten være din browser der ikke er standard, eller det objekt du loader der forhindrer det.

mvh JakobA
Avatar billede jakoba Nybegynder
12. september 2001 - 12:54 #9
Avatar billede herchin Nybegynder
12. september 2001 - 12:56 #10
Jeg IE 5.5, så den skulle være ok! Vil I ikke prøve at lave et objekt og se om I kan få det til at virke? Det er meget mystisk!!!
Avatar billede roenving Novice
12. september 2001 - 13:14 #11
Hvad er condition.htm ??

Hvis den selv handler de der onClicks får det bagved-liggende browser-vindue slet ikke at vide, at der er sket en klik-event, og så kan det selvfølgelig ikke noget.

hth
jes
Avatar billede herchin Nybegynder
12. september 2001 - 13:17 #12
Condition.htm er bare det grafiske display af objektet. Der er egentligt ikke noget specielt ved det... Et par tabeller o.s.v.
Avatar billede roenving Novice
12. september 2001 - 13:23 #13
Har du prøvet at lægge en <a href=\"#\" onClick=\"alert(\'Klikket!!\');\"></a>
rundt om dit objekt ??

Som test !
Avatar billede herchin Nybegynder
12. september 2001 - 13:29 #14
<a href=\"#\" onClick=\"alert(\'Klikket!!\');\">En eller anden tekst</a> - virker fint, men

<a href=\"#\" onClick=\"alert(\'Klikket!!\');\">
  <object>...
</a> - virker ikke \"W#¤@
Avatar billede roenving Novice
12. september 2001 - 13:31 #15
Så må der være et eller andet inde i dit object, som opfanger onClick-eventen, måske har dit billedbehandlingsprogram sat noget ind ???
Avatar billede herchin Nybegynder
12. september 2001 - 13:35 #16
condition.htm er bare en helt ordinær HTML-side, hvor der er en tabel med noget tekst. Ingen billeder eller noget!!! Kan I ikke prøve at lave et object selv og se om I kan få det til at virke i jeres browser?
Avatar billede roenving Novice
12. september 2001 - 13:50 #17
Møf =·|

Hvis jeg sætter et anchor rundt om objektet, er det kun objektets ramme, som giver en hånd med reference til #

els er der ikke noget, som virker -- og jeg har også lige dobbelt-checked w3c.org for at være sikker.

Det ser ud til, at der må være en pause i detektivernes jagt.

;·]
Avatar billede herchin Nybegynder
12. september 2001 - 13:53 #18
Hmmm - synes I ikke det er underligt?

W3 skriver jo, at <object> understøtter onClick, men det virker tilsyneladende ikke...
Avatar billede roenving Novice
12. september 2001 - 13:58 #19
Jo!

Næe ... øeh ...
Avatar billede jakoba Nybegynder
12. september 2001 - 14:07 #20
og hvad værre er. w3o siger IKKE at objeckt understøtter onfocus, men den virker.

Jeg tænlte det måske var noget med at siden htmlsider fanger de samme events skulle siden måske giver retur true/false på de events der skulle gå videre, men det ser heller ikke ud til at virke:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp108610.html

Lad spørgsmålet stå til måske en af de RIGTIE ørne (eg Jumper) kommer forbi.

mvh JakobA
Avatar billede herchin Nybegynder
12. september 2001 - 14:16 #21
Det vil jeg gøre - lad det nu ligge ;o)
Avatar billede Slettet bruger
12. september 2001 - 14:51 #22
Prøv at giv en URL, så er det nok nemmere for d\'herrer Roenving og Jakoba at løse gåden! Jeg venter spændt på svaret!! @:-))
Avatar billede herchin Nybegynder
12. september 2001 - 15:48 #23
Jeg har postet hele koden ovenfor, så I kan bare kopiere den til eget brug. Der er ingen URL i øjeblikket!!!
Avatar billede Slettet bruger
12. september 2001 - 17:50 #24
Prøv at tjek http://www.dynamicdrive.com/dynamicindex3/docsindocs.htm
Dér er det umuligt at fx højreklikke i <object>\'et, selvom der egentlig ikke er et no-right-click script i den eksterne side. Så det kan være, at man simpelthen ikke kan registrere sådan et klik med javascript?

En alternativ løsning kunne være, at tjekke for musens position ved body.onClick og hvis positionen er indenfor <object>\'et, så udløser den onClick hændelsen. Jeg ved ikke om det virker (?).
Avatar billede herchin Nybegynder
13. september 2001 - 09:06 #25
Det burde dog være muligt, når eventet officielt eksisterer på et <object>-tag!

Grunden til, at jeg skulle bruge et onClick på objektet var, at eventet skulle styrre width og height for objektet. Mit problem er løst ved at lave en funktion i mit scriptlet:

function _autoSize() {
  //html er id for den side, der indeholder mit scriptlet
  document.all.html.style.pixelHeight = document.body.scrollHeight;
}

Phoenixy -> Mange af de events, der eksisterer på objekter kan muligvis kun implementeres i det tilhørende scriptlet. En måde at løse onCLick eventet er, at implementere det i <body>-tagget i ens scriptlet. Der kan man lave alle de events man vil. Det løser bare ikke alle problmer, hvis man gerne vil reagere på et event i den eksterne side...

Jeg kunne godt tænke mig at finde ud af, hvordan de events virker på et object!
Avatar billede herchin Nybegynder
14. september 2001 - 10:16 #26
Jeg giver point!
Avatar billede roenving Novice
14. september 2001 - 10:42 #27
Takker ;~}
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