обнаружение jQuery .width () - PullRequest
0 голосов
/ 09 ноября 2010

Мне просто интересно, есть ли лучший способ определить ширину для каждого из этих элементов .modal (их может быть N в этой разметке).

С учетом того, как яТеперь я понял, что он использует только .width () первого .modal в разметке.

<script type="text/javascript">
    $(document).ready(function() {
        $(".modal").hide();
        $(".modal-links a").each(function(i,o){
          $(this).click(function(popUp){
            var modalWidth = $(".modal").width();
            var modalHeight = $(".modal").height();
            $(".modal").css({
             "margin-left":-(modalWidth/2) 
            });
            $(".modal:eq("+i+")").show().siblings(".modal").hide();
          });
        });
    });</script>

1 Ответ

1 голос
/ 09 ноября 2010

Вы хотите получить .modal, с которым хотите иметь дело в начале .click(), например:

$(document).ready(function() {
    $(".modal").hide();
    $(".modal-links a").each(function(i){
      $(this).click(function(popUp){
        var modal = $(".modal").eq(i),
            modalWidth = modal.width(),
            modalHeight = modal.height();
        modal.css({ "margin-left":-(modalWidth/2) })
             .show().siblings(".modal").hide();
      });
    });
});

Без этого вы правы, вы получите .height() и .width() первого .modal элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...