eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwProblem z JSRe: Problem z JS
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!.POSTED!not-for-mail
    From: Marek <p...@s...com>
    Newsgroups: pl.comp.www
    Subject: Re: Problem z JS
    Date: Sun, 03 Nov 2013 00:14:11 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 32
    Message-ID: <l54107$39l$1@node2.news.atman.pl>
    References: <l52ic9$j87$1@node2.news.atman.pl> <l52lpn$mlm$1@node2.news.atman.pl>
    <l5391m$7tv$1@node1.news.atman.pl> <l53fhv$f98$1@node1.news.atman.pl>
    <l53guc$gqq$1@node1.news.atman.pl>
    NNTP-Posting-Host: 89-69-209-185.dynamic.chello.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node2.news.atman.pl 1383434055 3381 89.69.209.185 (2 Nov 2013 23:14:15 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Sat, 2 Nov 2013 23:14:15 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101
    Thunderbird/24.1.0
    In-Reply-To: <l53guc$gqq$1@node1.news.atman.pl>
    Xref: news-archive.icm.edu.pl pl.comp.www:402470
    [ ukryj nagłówki ]

    W dniu 2013-11-02 19:40, inny punkt siedzenia... pisze:
    > skoro już się pochwaliłeś to wypadało by napisać jak sobie poradziłeś...
    >

    Następnym razem pisz jaśniej.

    Generalnie w JS nie ma niestety czegoś takiego jak możliwość
    zamaskowania zdarzeń myszy dla elementu przykrywającego inny. Zawsze
    jest tak, że jeśli dwa elementy nie są zagnieżdżone i nachodzą na
    siebie, to ten na górze przechwyci zdarzenia myszy a dolny się o nich
    nie dowie. Pozostaje jedynie ręcznie oprogramować taką sytuację. Robimy
    to tak:

    - określamy pozycję na ekranie elementu dolnego
    - przechwytujemy zdarzenia na górnym elemencie
    - jeśli koordynaty myszy (event.clientX/Y) pokrywają się z obszarem
    elementu dolnego, to albo w tym miejscu zaczynamy obsługę tych zdarzeń
    albo symulujemy to zdarzenie w elemencie dolnym przekazując parametry
    - jeśli element górny jest większy od dolnego to zdarzenia
    onmouseover/out będą generowane w niewłaściwym miejscu na ekranie - poza
    obszarem elementu dolnego. Jest na to obejście. Przechwytujemy
    onMouseMove, sprawdzamy czy wchodzimy w obszar dolnego elementu i jeśli
    tak, to generujemy/symulujemy zdarzenie onMouseOver. Ustawiamy semafor
    blokujący możliwość wielokrotnego generowania tego zdarzenia w takt
    poruszania się myszą. Gdy opuścimy obszar dolnego elementu - generujemy
    onMouseOut i przestawiamy w/w semafor.

    Generalnie jest to droga przez księżyc ale sprawuje się dobrze.

    --
    Pozdrawiam
    Marek

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: