【发布时间】:2015-10-29 08:12:56
【问题描述】:
在我的 jQuery 移动应用程序中,我有两个页面 A 和 B。页面 A 包含到 B 的链接。B 包含一个滑块。
B页:
<div data-role="page">
<div data-role="content">
<div id="list-of-people">
<div class="bxslider-header">
<fieldset data-role="controlgroup" data-type="horizontal" data-role="fieldcontain" class="header-right">
<input type="radio" name="sliderNav" id="sliderPrevious"
value="sliderPrevious"/>
<label for="sliderPrevious"><</label>
<input type="radio" name="sliderNav" id="sliderNext" value="sliderNext"/>
<label for="sliderNext">></label>
</fieldset>
</div>
<div id="sliderPeople" class="navi">
{% for person in people %}
<div class="slide">
<p>{{ person.firstname person.lastname }}</p>
</div>
{% endfor %}
</div>
</div>
</div>
<div data-role="footer" data-position="fixed" data-tap-toggle="false">
<p>my footer</p>
<script type="text/javascript">
$(function() {
var bxSliderPeople = $('#sliderPeople').bxSlider({
adaptiveHeight: true,
pager: false,
onSlideAfter: function (currentSlideNumber, totalSlideQty, currentSlideHtmlObject) {
$('#sliderPeople .active-slide').removeClass('active-slide');
$('#sliderPeople > div').eq(currentSlideHtmlObject + 1).addClass('active-slide');
},
onSliderLoad: function () {
$('#sliderPeople > div').eq(1).addClass('active-slide');
}
});
});
</script>
</div>
</div>
下面是我的问题的描述:
==> 当我加载页面 B 时,滑块显示得很好。
==> 当我通过页面 A 上的链接访问页面 B(= 通过 ajax 加载页面 B)时,滑块根本不显示。但是,幻灯片包含在 DOM 中。检查我的 HTML,我看到如下内容:
<div class="bx-wrapper" style="max-width: 100%; margin: 0px auto;">
<div class="bx-viewport" style="width: 100%; overflow: hidden; position: relative; height: 0px;">
<div id="sliderPeople" class="navi" style="width: 1215%; position: relative; transition-duration: 0s; transform: translate3d(0px, 0px, 0px);">
...
</div>
</div>
</div>
当我通过页面 A 上的页面链接访问页面 B 时,如何实现我的滑块也显示?
【问题讨论】:
标签: javascript jquery ajax jquery-mobile bxslider