WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   behöver lite hjälp med JS (https://www.wn.se/forum/showthread.php?t=1068670)

naak2803 2017-10-26 23:45

behöver lite hjälp med JS
 
Hej,

sitter och klurar ut varför detta inte fungerar... kan inte fatta vad som är felet.
Det jag vill ska hända är att när man hovrar över tabellraden ska den ta bort classen "examAvailible" och när musen lämnar raden ska den lägga till classen "examAvailible".

removeClass verkar fungera alldeles utmärkt medan addClass fungerar inte av någon konstik anledning. Någon som kan klura ut detta?

Kod:

$(function () {
            $("[id*=grvExams] td").hover(function () {
                $(".examAvailible", $(this).closest("tr")).removeClass("examAvailible");
            }, function () {
                    $(".examAvailible", $(this).closest("tr")).addClass("examAvailible");
                });
        });

Kod:

<table id="grvExams">
<tr>
<td>
<div class="examAvailible" id="examAvailible"></div>
</td>
</tr>
</table>

För att experimentera: https://jsfiddle.net/xvm4exeg/6/

som ni ser så raden rosa från början, hovrar man över den så försvinner rosa färgen. Men det är sen problemet uppstår... varför kommer inte rosa färgen tillbaka när man inte längre hovrar över raden?

naak2803 2017-10-27 00:14

haha man är ju lite trött...

denna kod funkar...

$(function () { $("[id*=grvExams] td").hover(function () { $("#examAvailible", $(this).closest("tr")).removeClass("examAvailible" ); }, function () { $("#examAvailible", $(this).closest("tr")).addClass("examAvailible"); }); });

ViktorPersson 2017-10-27 00:14

Du har satt klassen (och ett onödigt ID) på DIV-taggen, istället för på TR-taggen, som du adresserar inuti .hover().

Exempel fix: https://jsfiddle.net/ybtc86an/


Alla tider är GMT +2. Klockan är nu 18:25.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson