Autor Zpráva
marsme
Profil
Generuji z pole výčet prvků. Pro tyto prvky mám obslužné ikony vedoucí na různé action. Potřebuji, aby ve stavu kdy nemám myš nad prvkem byly skryté. Pomocí níže uvedeného JS se mi ale mouseover a mouseout event naváže vždy jen na první prvek. Jak to udělat tak aby se navázal na všechny a aby když najedu na jeden prvek se zároveň nezobrazily ikony i u ostatních.
$("#page_item").mouseover(function(){
    $(this).css("background-color","#bc0028");
    $(this).css("color","#ffffff");
    $("#page_item a.slider").show();
    $("#page_item a.trash").show();
    });
    
    $("#page_item").mouseout(function(){
    $(this).css("background-color","#ffffff");
    $(this).css("color","#383838");
    $("#page_item a.slider").hide();
    $("#page_item a.trash").hide();
    });

HTML je tady.

{foreach $place as $p}
    <div>
    <div id="page_item">
    <a href="" class="slider"><img src="{$basePath}/images/category_button_up.png" alt="Nahoru"/></a>
    <a href="" class="slider"><img src="{$basePath}/images/category_button_down.png" alt="Dolů"/></a>
    <a href="" class="slider"><img src="{$basePath}/images/category_catup.png" alt="O úroveň výše"/></a>        
    <span>{$p->name}</span>
    <a href="" class="trash"><img src="{$basePath}/images/category_button_trash.png" alt="Smazat"/></a>
    </div>
    </div>
    {/foreach}



Vyřešeno. V cyklu se nesmí používat identifikátor ID. Výměna za class to vyřešila.




Ještě kdyby to někoho zajímalo tak bylo třeba upravit ten js. výsledek tedy vypadá takto:

$(".page_item").mouseover(function(){
        $(this).css("background-color","#bc0028");
        $(this).css("color","#ffffff");    
        $(this).find("a.slider").show();
        $(this).find("a.trash").show();
    });
    
    $(".page_item").mouseout(function(){
    $(this).css("background-color","#ffffff");
    $(this).css("color","#383838");
    $(this).find("a.slider").hide();
    $(this).find("a.trash").hide();
    });
Keeehi
Profil
Jen upřesním, že v cyklus nemá s id elementu nic společného, id klidně v cyklu bý použito může. Co ovšem problém je to, že pokud se cyklem vypisuje element s id a toto id se nemění, ve vygenerovaném HTML se objeví více elementů se stejným id, což je právě ta chyba.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0