Манипулирование элементом с помощью jquery не работает - PullRequest
0 голосов
/ 08 августа 2009

У меня есть обычный div, вот так:

<div id="registry_ViewPanel">
    <div id="registry_Header">Register</div>
    <div id="registry_Content">
       //Registry fields here
    </div>
</div>

с css:

#registry_ViewPanel {
    width:400px;
    height:400px;
    border:1px solid;
    background-color:#fff;
    display:none;
    position:fixed;
}

Вот несколько предупреждений, которые я сделал с помощью jquery:

alert($("#registry_ViewPanel").length);
alert($("#registry_ViewPanel").html());
alert($("#registry_ViewPanel").height());
alert($("#registry_ViewPanel").width());

Вот результаты

1
//Displays everything inside of <div id="registry_ViewPanel"></div>
0
0

Но когда я смотрю на <div id="registry_ViewPanel"></div> с клопом, нет ничего, что бы перекрывало высоту или ширину ...

Кроме того, когда я пытаюсь присвоить .draggable(); или сделать .fadeIn();, это не работает ...

Есть идеи, почему это могло произойти? Если у вас есть какие-либо подозрения, даже если у вас недостаточно информации, сообщите мне, и я либо предоставлю дополнительную информацию, либо опробую вашу идею.

Спасибо,
Matt

Ответы [ 2 ]

2 голосов
/ 08 августа 2009

Функции height() и width() получают фактическую высоту объекта DOM. Поскольку div без содержимого в нем вообще не отображается, он возвращает 0. Используйте css() для получения атрибутов CSS, как упоминает karim79.

$("#thing").css("height");
0 голосов
/ 08 августа 2009

Длинный выстрел ... Единственное, что приходит на ум, - это то, что весь документ еще не загружен / отрендерен, поэтому элемент не имеет ширины и высоты. Вы помещаете свой код jQuery в готовый документ ()?

$(document).ready(function() {
   alert($("#registry_ViewPanel").length);
   alert($("#registry_ViewPanel").html());
   alert($("#registry_ViewPanel").height());
   alert($("#registry_ViewPanel").width());
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...