Avatar billede langkiller Nybegynder
28. august 2012 - 18:39 Der er 11 kommentarer og
1 løsning

jquery animate ryk billede til siden virker ikke

Har følgende script til et billede

$(\"#home\").mouseover(function () {
            $(this).animate({
                height: \"70\",
                width: \"70\",
            }, \"fast\");
        $(this).animate({\"right\" : \"+=100px\"}, \"fast\");
        $(\"#hometext:hidden:first\").fadeIn(\"fast\");
    });   
   
    $(\"#home\").mouseout(function () {
            $(this).animate({
                height: \"56\",
                width: \"56\",
            }, \"fast\");
           
$(\"#hometext\").fadeOut(\"fast\");


Jeg ville gerne have den til at rykke lidt til venstre, men af en eller anden grund virker det ikke... alt det andet virker så forstår ikke helt.
Mangler jeg et plugin til denne funktion eller noget??

Alle \'erne er der pga det står i en php funktion. de betyder ikke noget.
Avatar billede jokkejensen Novice
28. august 2012 - 19:12 #1
hvad siger alert($(this).css('position')) onmouseover?

/J
Avatar billede langkiller Nybegynder
28. august 2012 - 19:18 #2
den siger bare static
Avatar billede olebole Juniormester
28. august 2012 - 20:14 #3
<ole>

Ved static har left, right, top og bottom ingen virkning

/mvh
</bole>
Avatar billede olebole Juniormester
28. august 2012 - 20:15 #4
PS: Brug position:absolute  =)
Avatar billede langkiller Nybegynder
28. august 2012 - 20:16 #5
okay, hvordan laver jeg så det om ? :)
Avatar billede langkiller Nybegynder
28. august 2012 - 20:16 #6
ahh okay ;) prøver jeg
Avatar billede softspot Forsker
28. august 2012 - 20:17 #7
Prøv evt. med mouseenter og mouseleave i stedet:

$(\"#home\")
    .mouseenter(function () {
        $(this).animate({
            height: \"70\",
            width: \"70\",
        }, \"fast\");
        $(this).animate({\"right\" : \"+=100px\"}, \"fast\");
        $(\"#hometext:hidden:first\").fadeIn(\"fast\");
    })
    .mouseleave(function () {
        $(this).animate({
            height: \"56\",
            width: \"56\",
        }, \"fast\");
    });


Alternativt hover:

$(\"#home\").hover(
    function () {
        $(this).animate({
            height: \"70\",
            width: \"70\",
        }, \"fast\");
        $(this).animate({\"right\" : \"+=100px\"}, \"fast\");
        $(\"#hometext:hidden:first\").fadeIn(\"fast\");
    },
    function () {
        $(this).animate({
            height: \"56\",
            width: \"56\",
        }, \"fast\");
    });
Avatar billede langkiller Nybegynder
28. august 2012 - 20:23 #8
fedt. det virker perfekt nu :)
mange tak! smid et svar
Avatar billede langkiller Nybegynder
29. august 2012 - 20:02 #9
@softspot: Er mouseenter/mouseleave og hover da bedre at bruge eller?
Avatar billede langkiller Nybegynder
31. august 2012 - 00:31 #10
nå jeg lukker bare selv tråden så..
tak for hjælpen
Avatar billede olebole Juniormester
31. august 2012 - 01:42 #11
onmouseenter og onmouseleave har i mange år været understøttet af IE.

Det er lettere at vise end at forklare forskellen  =)

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>MouseOver/-Out vs. MouseEnter/-Leave</title>
<style type="text/css">
body {
    margin: 0;
    padding: 0;
    font: 12px verdana, arial, sans-serif;
}
.container {
    display: inline-block;
    width: 420px;
    vertical-align: top;
}
pre {
    width: 400px;
    height: 250px;
    overflow: auto;
    border: 1px solid #ccc;
}
.square-blue {
    width: 200px;
    height: 150px;
    margin: 0 auto;
    padding: 50px;
    background: blue;
}
.square-red {
    width: 100%;
    height: 100%;
    background: red;
}
</style>
<script type="text/javascript">
function mOver(elm) {
    elmDisplA.firstChild.nodeValue += "Over på elementet med '"+elm.className+"'\r";
}
function mOut(elm) {
    elmDisplA.firstChild.nodeValue += "Out på elementet med '"+elm.className+"'\r";
}
function mEnter(elm) {
    elmDisplB.firstChild.nodeValue += "Enter på elementet med '"+elm.className+"'\r";
}
function mLeave(elm) {
    elmDisplB.firstChild.nodeValue += "Leave på elementet med '"+elm.className+"'\r";
}

function init() {
    window.elmDisplA = document.getElementById("displ_one");
    window.elmDisplB = document.getElementById("displ_two");
    window.detachEvent("onload", init);
}

window.attachEvent("onload", init);
</script>
</head>
<body>

<div class="container">
    <pre id="displ_one">&nbsp;</pre>
    <div onmouseover="mOver(this)" onmouseout="mOut(this)" class="square-blue">
        <div onmouseover="mOver(this)" onmouseout="mOut(this)" class="square-red">
           
        </div>
    </div>
</div>

<div class="container">
    <pre id="displ_two">&nbsp;</pre>
    <div onmouseenter="mEnter(this)" onmouseleave="mLeave(this)" class="square-blue">
        <div onmouseenter="mEnter(this)" onmouseleave="mLeave(this)" class="square-red">
           
        </div>
    </div>
</div>

</body>
</html>
Avatar billede softspot Forsker
31. august 2012 - 08:38 #12
Sorry! Jeg fik ikke nogen notifikation om at der var kommet flere indlæg til tråden.
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