2008-10-21 6 views
3

J'essaie d'afficher une nouvelle couche au-dessus du contenu existant sur mon site lorsqu'un clic sur un lien ou un bouton est effectué. J'utilise jquery - mais le code que j'ai ne semble pas fonctionner comme prévu.JQuery insertion d'un calque au-dessus du contenu existant

Voici ce que j'ai:

$(document).ready(function(){ 
    $("#button").click(function() { 
    $("#showme").insertAfter("#bodytag") 
    $("#showme").fadeIn(2000); 
}); 

});

L'effet que je suis après est d'avoir <div id="showme">...</div> apparaître directement après le #bodytag. <div id="showme">...</div> a un z-index plus élevé que toute autre chose sur le site, il devrait donc apparaître juste au-dessus du contenu directement après le #bodytag.

Merci pour l'aide.

+0

Voulez-vous dire qu'il pousse le contenu qui est déjà sous #bodytag plus bas ? Ou apparaît-il derrière le contenu qui est déjà là? –

Répondre

2

Il me semble que pour obtenir l'effet désiré, la div dans laquelle vous insérez #showme doit être position: relative, et #showme devrait être position: absolute. Le positionnement absolu enlèvera l'élément du flux de documents, lui permettant de s'asseoir au-dessus du contenu.

En outre, deux conseils - ($) est un raccourci pour $ (document), et vous pouvez la chaîne jQuery commandes:

$().ready(function(){ 
    $("#button").click(function() { 
    $("#showme").insertAfter("#bodytag").fadeIn(2000); 
    }); 
}); 
+0

Merci tags2k. La solution était telle que vous l'avez décrite. Ajouter une position: absolue au contenu que j'insérais l'a fait. Aussi - merci pour les raccourcis - je suis nouveau à jquery donc c'était très apprécié. –

0

Assurez-vous que #showme a un position autre que static.

Questions connexes