Skocz do zawartości
  • Zarejestruj się

Blog IPSBeyond.pl

  • wpisy
    79
  • komentarzy
    42
  • wyświetleń
    131306

Podgląd treści po najechaniu na link

Spanner

308 wyświetleń

Czasami w aplikacji, którą piszemy potrzebujemy zrobić szybki podgląd zawartości. Przykładem takiego miejsca jest chociażby lista tematów w danym forum, gdzie po najechaniu myszką na tytuł tematu po chwili pokazuje nam się podgląd pierwszego i ostatniego posta w temacie.Podgląd taki jest efektem bardzo prostym do osiągnięcia. Pokażę to na przykładzie mojej nowej aplikacji.

W widoku, w miejscu gdzie jest link do wpisu dodajemy coś takiego:

data-ipsHover data-ipsHover-target='{$row->url()->setQueryString( 'preview', 1 )}' data-ipsHover-timeout='1.5'

Czyli całość wygląda np. tak:

<a href="{$row->url()}" data-ipsHover data-ipsHover-target='{$row->url()->setQueryString( 'preview', 1 )}' data-ipsHover-timeout='1.5'>{$row->name}</a>

Następnie w kontrolerze dla takiego żądania musimy stworzyć odpowiedni kod, który obsłuży takie żądanie. W moim przypadku kod jest umieszczony w metodzie manage() i zawiera bardzo prosty kod:

        if( \IPS\Request::i()->isAjax() && \IPS\Request::i()->preview )
        {
            \IPS\Output::i()->sendOutput( \IPS\Theme::i()->getTemplate( 'core' )->ticketHover( $this->ticket ) );
            return;
        }

I to jest w sumie tyle. Jak będzie wyglądać podgląd i co będziecie w nim prezentować zależy już tylko od Was.



0 komentarzy


Rekomendowane komentarze

Brak komentarzy do wyświetlenia.

Dołącz do rozmowy

Możesz pisać i zarejestrować się później. Jeśli masz konto,Zaloguj się teraz, aby publikować na swoim koncie.

Gość
Dodaj komentarz...

×   Wklejony jako tekst z formatowaniem.   Wklej jako zwykły tekst

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.