Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Po najechaniu myszką na zdjęcie efekt jak na imageshack
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
aleks365
Witam

Szukałem na internecie takiego efektu
http://imageshack.us/photo/my-images/525/m...nnsipmsnns.jpg/
chodzi że jak myszką najedzie się na obrazek to u góry w rogu są opcje a ja szukam takiego czegoś tylko żeby się to pojawiało w rogu na dole po lewej stronie dokładnie mi chodzi o to że jak najadę myszką na obrazek to żeby tam było żeby polecić na Facebooka itp to już sobie bym zrobił jedynie prosił bym o taki efekt jak na imageshack.us że tylko coś się pojawia po najechaniu kursorem ja już jak mówiłem bym sobie resztę zrobił

Dziękuje z góry i pozdrawiam aleks365 smile.gif
piotrex41
Zrób sobie DIVa z tymi przyciskami i poprzez position:absolute; umieść to tam gdzie chcesz i dodaj display:none;
Teraz w jQuery musisz zrobić żeby po zdarzeniu .mouseover() display tego DIVa zmieniał się na block -> .css('display', 'block');, a po opuszczeniu .mouseout(), znów był display none -> .css('display', 'none');
To jest bardzo prosty skrypt smile.gif
aleks365
Bardzo bym prosił o jakiś przykład jestem bardzo cienki z JavaScript dopiero zaczynam
strife
Cytat(aleks365 @ 18.07.2012, 11:27:56 ) *
Bardzo bym prosił o jakiś przykład jestem bardzo cienki z JavaScript dopiero zaczynam


http://api.jquery.com/hover/


http://stackoverflow.com/questions/9489926...-image-show-div
aleks365
Dzięki wielkie o to mi chodziło smile.gif
piotrex41
Wszystko w jednym pliku, żebyś zobaczył jak to wygląda, testowane. Teraz musisz tylko sobie dostosować do potrzeb, bo to jest tylko przykład.
Kod
<!DOCTYPE html>
<html>
<head>
    <title>test</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js"></script>
    <script>
    $(function($){
        $('div#divv').mouseover(function()
        {
            $('div#options').addClass('active');
        }).mouseout(function()
        {
            $('div#options').removeClass('active');
        });
    });
    </script>
    
    <style>
div#divv {position:relative;width:218px;height:156px;}
div#options {position:absolute;top:3px;right:3px;background:rgba(0,0,0,.3);padding:2px;color:#fff;display:none;}
div.active {display:block!important;}
    </style>
</head>
<body>

    <div id="divv">
        <img src="img.png" alt="" />
        <div id="options">ZOOM | Cokolwiek</div>
    </div>

</body>
</html>
aleks365
o dzięki jeszcze lepiej smile.gif

mam jeden mały problem nie wiem jak zrobić aby pojawiający się tekst pojawiał się na dole z lewej strony
piotrex41
Kod
div#options {position:absolute;top:3px;right:3px;background:rgba(0,0,0,.3);padding:2px;color:#fff;display:none;}

zamień na:
Kod
div#options {position:absolute;bottom:3px;left:3px;background:rgba(0,0,0,.3);padding:2px;color:#fff;display:none;}


Konkretnie zamieniasz
Kod
top:3px;right:3px;

na:
Kod
bottom:3px;left:3px;

A 3px oznacza odsunięcie 3px.
aleks365
ok dzięki działa mam jeszcze jeden problem dodałem animacje że po najechaniu pojawia się tak powoli

kod
  1. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js"></script>
  2. $(function($){
  3. $('div#divv').mouseover(function()
  4. {
  5. $('div#options').animate({opacity: '+=0.9'}, 500);
  6. $('div#options').addClass('active');
  7. }).mouseout(function()
  8. {
  9. $('div#options').animate({opacity: '-=0.9'}, 1);
  10. $('div#options').removeClass('active');
  11. });
  12. });
  13.  
  14.  
  15. div#divv {
  16. position:relative;
  17. width:350px;
  18. }
  19.  
  20. div#options {
  21. position:absolute;
  22. bottom:0px;
  23. background:rgba(0,0,0,.3);
  24. padding:2px;
  25. margin:5px;
  26. color:#fff;
  27. display:none;
  28. float:left;
  29. opacity: 0.0;
  30. }
  31.  
  32. div.active {
  33. display:block!important;
  34. }
  35.  
  36. <div id="divv">
  37. <img src="http://lfs-driver.pl/image/425/xf_volkswagen_golf_mk2_gt_v11/" />
  38. <div id="options">ZOOM | Cokolwiek | Najedz myszką tutaj</div>
  39. </div>


i jak się myszką najedzie na to co się pojawia czyli (ZOOM | Cokolwiek | Najedz myszką tutaj) to jakoś się ściemnia i szybko rozjaśnia zobacz sam co jest nie tak?
piotrex41
Kod
<script>
    $(function($)
    {
        $('div#divv').mouseover(function()
        {
            $('div#options').stop().animate({opacity: '+=0.9'}, 500);
            $('div#options').addClass('active');
        }).mouseout(function()
        {
            $('div#options').stop().animate({opacity: '-=0.9'}, 1);
            $('div#options').removeClass('active');
        });
    });
</script>

Zapomniałeś użyć .stop(). Już jest OK.
aleks365
No faktycznie mówiłem że jestem początkujący jeszcze raz dzięki wielkie dzięki smile.gif

jeszcze coś ale to nie jest pilne ani ważne

nie wiem czemu nie działa funkcja
  1. $('div#options').stop().animate({opacity: '-=0.9'}, 1);
  2. $('div#options').removeClass('active');


chodzi o to że jak znajdę myszką z tego tekstu to on znika od razu wydaje mi się że trzeba dać po .animate display:block ale nie jestem pewny i nie wiem jak
piotrex41
To mój inny skrypt, który robi to co chcesz zrobić czyli po najechaniu zwiększa opacity. Może skorzystasz...
Kod
    $('.opacity').fadeTo('normal', .5).hover(
        function()
        {
            $(this).stop().fadeTo('normal', 1);
        },
        function()
        {
            $(this).stop().fadeTo('normal', .5);
        }
    );
aleks365
ok

witam ponownie

dręczy mnie jeszcze coś chciałem ten skrypt wykorzystać do tego że jak myszką najadę na artykuł na stronie to żeby były wyświetlane komentarze dokładnie ilość komentarzy ale jak biorę to robię i najadę myszką na pierwszy wpis to u wszystkich innych też się pojawia ilość komentarzy czemu tak nie da się jakoś id przypisać osobno tak żeby była ilość komentarzy tylko tam gdzie najadę myszką

Tutaj jest nowy temat o tym
Temat: Jak przypisac oznaczenie id do kazdego diva

jak coś pisz tam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.