Я использую плагин jScrollPane jQuery в проекте, а область с прокруткой содержит пару элементов элемента списка, и каждый элемент списка, когда его щелкают, требует, чтобы кодовое поле было установлено абсолютным из центра, заполняя все пространство. Во всяком случае, его трудно объяснить, но это не проблема. Проблема в том, что мне нужно получить значение отрицательного верхнего значения css (когда оно прокручивается вниз) через jQuery, и я не могу заставить его работать, я попытался использовать селектор.css(), но он всегда возвращает 0px, даже если в источник показывает разные. Есть идеи?
РЕДАКТИРОВАТЬ:
<div id="provider-menu">
<ul>
<li class="menu-item"> <h2> content here </h2>
<div class="more-info">
more info box here
</div>
</li>
<!-- More List Items Here -->
</ul>
</div><!-- end #provider-menu -->
<!-- Javascript -->
$("#provider-menu").jScrollPane();
// jspPane is added by the plugin
var topValue = $(".jspPane").css("top"); // returns 0px every time on scroll even if in the source is different.
Я пытаюсь сделать это, потому что я не могу изменить структуру HTML, div.more-info должен заполнить поле # поставщика-поставщика, которое имеет предопределенную ширину и высоту, но если я настрою его на абсолютное верхнее левое правое нижнее он идет вверх, и вам нужно прокрутить, чтобы увидеть, что там. Поэтому я думал о том, чтобы получить верхнее отрицательное значение, удалить минус и установить верхнее значение в поле.more-info.
$(element).css
ведет себя иначе, чем вы могли ожидать.
Это фактически работает: $(".jspPane")[0].style.top
Я считаю, что у вас есть абсолютное позиционирование, чего у jspPane нет. В любом случае приведенный выше код дает вам фактическое (обычно отрицательное) значение пикселя.
.position()
или.offset()
.