DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   (X)HTML, JavaScript, DHTML, XML, CSS (http://www.devprotalk.com/forumdisplay.php?f=8)
-   -   mouseover gubi fokus preko <object> (http://www.devprotalk.com/showthread.php?t=266)

bluesman 04. 10. 2005. 23:58

mouseover gubi fokus preko <object>
 
Problem:

Imam jedan div.
U tom div-u je flash object.
Na div su "okačeni" events mouseover i mouseout.
Ali dešava se problem sa FF.

HTML kôd:

<div id=nekidiv onmouseover="nekaFunkcija();" onmouseout="drugaFunkcija();">
<object>
<!-- flash -->
</object>
</div>

Kada mis predje preko div, kao sto se i ocekuje, izvrsi se event onmouseover (nekaFunkcija()), medjutim cim mis predje preko <object> (koji je unutar tog DIV) izvrsi se mouseout event (drugaFunkcija()).

Probao sam da stavim i na object event mouseover, kao i mousemove da nista ne dira, medjutim, iznenadjujuce u IE sve radi kako je logicno (kako mi treba), medjutim u FF se izvrsi mouseout event cim predjem preko <object> što ne treba da se desi.

Jel' ima neko neku ideju?

bluesman 05. 10. 2005. 00:55

Anybody? hitno je :)

nixa 05. 10. 2005. 02:42

aj pokusaj da ovako postavis object tag

HTML kôd:

<object type="application/x-shockwave-flash" data="fajl.swf" width="280" height="280">
</object>

mozda ga ostale fore tripuju :)

bluesman 05. 10. 2005. 03:06

jok, nije to problem, mislim da je u pitanju firefox koji ima svoje shvatanje. Radi kako treba u IE i operi.

noviKorisnik 05. 10. 2005. 08:42

1 Prilog(a)
Čudi me kad kažeš da radi u Operi, jer napravio sam test primer gde mi samo IE (ajd de, Maxthon) vraća događaj nad Flashom... Lepo se vidi da pri ulazu na svaki element unutar diva dolazi do okidanja onmouseout, ali odmah potom i ponovnog okidanja onmouseover (osim tamo gde zakine :-)

dinke 05. 10. 2005. 08:50

Evo, probao sam i ja isto. Sto je najgore, nije samo object problem, isto je i sa slikama. Recimo:

Kôd:

<div id="leftcolumn" onmouseover="nekaFunkcija();" onmouseout="drugaFunkcija();">
<img src="images/semafors.jpg" alt="semafors" /><br />
</div>

Kada predjes preko slike aktivira se drugaFunkcija.

Inace, kod mene i IE6 poludi, ne samo FF. Ocigledno da zavisi od samog css stila koji definise div.

dinke 05. 10. 2005. 09:02

Pogledaj ovo, cini mi se da je covek imao slican problem (a tu je i resenje)

http://forums.digitalpoint.com/showthread.php?t=20051

bluesman 05. 10. 2005. 12:58

Nisam probao u operi, klijent je rekao da radi u operi normalno. Ja sam probao u IE i tu radi ok.

mungos 05. 10. 2005. 19:30

Citat:

Anybody? hitno je
eh, u 00:55 ;-)


Evo ja sam tek sada vidio problem, a da probaš da preko dijela gdje se nalazi flash u okviru <object></object> da apsolutno pozicioniraš jedan transparentan div?

noviKorisnik 05. 10. 2005. 20:01

Ne može baš "preko" flasha. Flash ne trpi autoritet kao što je z-index, on je uvek "gore".

mungos 05. 10. 2005. 20:33

Daa, sad sam se malo igrao sa ovim problemom, vrlo nezgodno. Vidio sam tek sad da je flash autoritet, mada ova solucija sa z-index i transparentnim divom u nekim slučajevima može okej da posluži. Ma kao što je Korisnik rekao, ovi okidači zajebavaju. Čini mi se da je div možda moguće riješiti pomoću skripta koji mjenja pozadinski div (onmouseover="aktiviraj(this);"), odnosno mjenja recimo css #devprotalk u #devprotalk-active, s tim što je ovo prost efekat. Ništa od fenseraja. Možda ima nešto korisno u ALA članku iz 2002: http://www.alistapart.com/articles/flashsatay

bluesman 06. 10. 2005. 06:34

Rešio sam problem sa flashom posle malo experimentisanja. Dakle, fora je da flash bude transparent, odnosno wmode="transparent". Onda, posto je windowless, ne preuzima fokus od div-a u kojem se nalazi.

Sto se tice praznog diva preko svega, ne funkcionise, probao sam to jos u pocetku.

bluesman 06. 10. 2005. 08:11

Medjutim... kad ono... sad se pojavio drugi problem u FF:

Kada je flash u DIV-u koji ima style="display:none;" flash se ne ucita. Holy schmoly :)

U IE i Opera sve radi kako treba.

noviKorisnik 06. 10. 2005. 08:19

Da, radi to. Može da bude problem u IE ako film i zaista jeste transparentan jer vraća fokus tek kada se miš postavi nad nekom "konkretnom" površinom filma. Jednostavno, definiciju za wmode transparent postaviš samo u embed tag, ne dodaješ ga kao parametar objekta i radi lepo.

Ne sviđa mi se što se pri ulasku i izlasku sa svakog child elementa okidaju onmouseout diva i potom ponovo onmouseover. Treba ovo imati na umu da ne dođe do pojave treptaja izmena koje čini out funkcija. Postavljanje timeouta od par desetinki može ovo da spreči.

noviKorisnik 06. 10. 2005. 09:01

1 Prilog(a)
Citat:

Originalno napisao bluesman
Medjutim... kad ono... sad se pojavio drugi problem u FF:

Kada je flash u DIV-u koji ima style="display:none;" flash se ne ucita. Holy schmoly :)

U IE i Opera sve radi kako treba.

Nisam primetio tako nešto. Kod svih browsera se flash učitava tek kada se uključi display diva, s tim što FF i Opera pri svakom uključivanju diva pokreću film dok IE to čini samo prvi put.

Opet kačim primer...

bluesman 06. 10. 2005. 12:41

Ma da to, to je posebna stvar sto ga pokrece od pocetka (bug ili feature?), medjutim morao sam da postavim div na:
{ visibility: hidden; display: none; }
pa na mouseover da ga vracam na:
{ visibility: visible; display: block }
Jeste ruzno, ali tako radi.

Na kraju se pojavio jos jedan problem: morao sam u isti div da uvedem i jedan dropdown - kada on dobije focus tek tu nastaje problem u svim browserima.


Vreme je GMT +2. Trenutno vreme je 06:41.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.