2009-08-20 5 views
2

Comment se fait-il que cela ne crée pas de barre verticale de 5px sur le côté de la fenêtre?Comment modifier les propriétés CSS (height width) d'un élément div via JQuery?

<html> 
<head runat="server"> 
    <script type="text/javascript" src="jquery.js"></script> 
    <script type="text/javascript"> 

     $(document).ready(function() { 
      $("#scrollBar").css({ 
       height: $(window).height, 
       width: 5, 
       position: "absolute",     
       top: 0, 
       left: $(window).width - 5, 
       margin: 0 
      }); 
     }); 

    </script> 
</head> 
<body> 
    <div id="scrollBar" style="background-color: Red">test 
    </div> 
</body> 
</html> 

Répondre

6

Utilisez ce lieu:

J'ai trouvé plusieurs problèmes:

  • au lieu de $(window).height, utilisez $(window).height()
  • au lieu de left: $(window).width - 5, utilisez right: 0

    $(document).ready(function() { 
        $("#scrollBar").css({ 
         height: $(window).height(), 
         width: 5, 
         position: "absolute",     
         top: 0, 
         right: 0, 
         margin: 0 
        }); 
    }); 
    
+0

Le seul problème avec «droit» est que IE souvent muck up et est 1px off. – Pat

+0

Est-ce que le rembourrage/marge aiderait? Je n'ai pas IE maintenant je ne peux pas le tester. – Randell

+0

testé sur ie8.works. – krishna

0

Au lieu de left: $(window).width - 5, vous pouvez essayer right: 0.

EDIT: Oui, c'était plutôt stupide. Mais, si je ne me trompe pas, ceux-ci devraient également être cités, comme dans «largeur»: «5px» ,.

$("#scrollBar").css({ 
    'height': $(window).height(), 
    'width': '5px', 
    'position': 'absolute', 
    'top': 0, 
    'right': 0, 
    'margin': 0 
    }); 
1

vous pouvez mettre "5px" au lieu de 5 pour la largeur et $ (fenêtre) .height() + "px" pour la hauteur et ($ (fenêtre) .width() - 5) + "px" pour la gauche.

1

À la lecture de la documentation jQuery, vous pouvez voir que vous devez mettre les propriétés css et leurs valeurs sous forme de valeurs de chaîne.

 
$("#scrollBar").css({ 
       'height': $(window).height(), 
       'width': '5px', 
       'position': 'absolute',     
       'top': '0', 
       'left': $(window).width() - 5, 
       'margin': '0' 
      }); 

http://docs.jquery.com/CSS/css#properties

Je ne suis pas sûr de savoir comment dur vous souhaitez afficher les valeurs calculées. PS: Jonathas avait raison la hauteur et la largeur sont des fonctions, pas des propriétés.

Questions connexes