2010-11-18 5 views

Répondre

5

Vous pouvez faire simplement if vérifier des éléments correspondant au sélecteur (le .length), par exemple:

if($("table.controls").length) { 
    $("div").css({ "overflow-y": "visible" }); 
} 

Bien que ... ce sélecteur "div" devrait être beaucoup plus précis à ce que vous » re après. Si vous voulez vraiment ajouter la <div> il ressemblerait à ceci:

$("table.controls").after('<div style="overflow-y: visible;"></div>'); 
2

Vous pouvez utiliser la propriété length pour voir si un objet jQuery contient des éléments:

if ($('table.controls').length > 0) { 
    $('div').css('overflow-y','visible'); 
} 
2
if ($('table.controls').length) { 
    $('div[style=overflow]').css('overflow-y','visible'); 
} 
+1

Vous ne trouverez peut-être rien en utilisant 'div [style = overflow]'. Comme le style n'est pas valide, le navigateur peut le supprimer lorsque le code HTML est analysé. – Guffa

0
$(function(){ 
    $('.controls').addClassToDiv(); 
} 

$.fn.addClassToDiv = function(){ 
    return this.each(function(){ 
    $(this).next('div').addClass('myStyles'); 
    }); 
} 

Vous devriez vraiment garder vos styles dans vos feuilles de style plutôt que d'ajouter des styles en ligne, mais ajouter/supprimer des classes est facile. Définissez vos nouveaux styles dans votre feuille de style. Le JS ajoute un plugin jQuery appelé addClassToDiv qui est exécuté sur le chargement de la page, où il y a un élément avec une classe de 'contrôles' dans la page.

Questions connexes