2010-03-27 5 views
2

J'ai l'image suivante dans un CMS que je veux cacher, je ne veux pas vraiment changer le code source, mais je voudrais cacher une image spécifique qui n'a pas une classe appliquée.Jquery/YUI - Trouver l'image et définir CSS à afficher: aucun

Voici le code HTML:

<td class="right side"> 
    <a title="Show only topic 1" href="view.php?id=3&topic=1"> 
    <img alt="Show only topic 1" src="http://vl3.co.uk/iphone/pix/i/one.gif"/> 
    </a> 
    <br/> 
    </td> 

Je veux cacher la <a> et le <img>, nu à l'esprit la title et l'étiquette alt peut être différent donc je ne peux utiliser que comme un identifiant.

Je présume que je pourrais utiliser .find() puis utiliser .parent() pour régler la <a> à display: none; cachant ainsi la img? Imi compris la bibliothèque jQuery, cependant le CMS a YUI inclus hors de la boîte, donc si quelqu'un a une méthode YUI, il serait apprééé.

Répondre

3

YUI 2.x (p/Selector)

YAHOO.util.Dom.setStyle(YAHOO.util.Selector.query(".right.side a:first"), "display", "none"); 

YUI 2.x (w/o Selector)

var rightSide = YAHOO.util.Dom.getElementsByClassName("right", "td")[0], 
    a = rightSide.getElementsByTagName("a")[0] 

YAHOO.util.Dom.setStyle(a, "display", "none"); 

YUI 3.x

Y.all(".right.side a:first").setStyle("display", "none"); 
+0

N'oubliez pas que 'setStyle' attend 2 arguments' String', pas un objet. Si vous voulez définir de nombreuses propriétés, 'el.setStyle (haut: 0, gauche: 0)' ** ne fonctionnera pas **. Vous devez appeler 'setStyle' deux fois, par exemple. 'el.setStyle ('top', '0'); el.setStyle ('left', '0') '. – szeryf

+0

@szeryf: Pour YUI3, vous pouvez utiliser [setStyles] (http://yuilibrary.com/yui/docs/api/classes/Node.html#method_setStyles) pour définir plusieurs en un seul appel. – Tivac

1

La méthode jQuery serait:

$(".right.side a:first").hide(); 

Cela devient la première <a> sous l'élément class="right side" et il définit à display: none. Assurez-vous de remplacer $ avec jQuery si vous utilisez pas de conflit :)

+0

Une autre note: L'élément apparaît plusieurs fois sur la page, donc besoin de les trouver. – CLiown