jquery slider.on()
我有以下jquery代码:jquery slider.on(),jquery,html,css,Jquery,Html,Css,我有以下jquery代码: $('div#headBannerSearchAgedBetweenSlider').slider({ range: true, min: 18, max: 99, values: [18, 65], change: function(event, ui) { $('span#headerBannerA
$('div#headBannerSearchAgedBetweenSlider').slider({
range: true,
min: 18,
max: 99,
values: [18, 65],
change: function(event, ui) {
$('span#headerBannerAgedMin').html(ui.values[0]);
$('span#headerBannerAgedMax').html(ui.values[1]);
},
slide: function(event, ui) {
if (ui.values[0] == ui.values[1]) {return false;}
}
});
需要注意的是,当加载js脚本时,元素“div#headBannerSearchAgedBetweenSlider”不可用,因此我需要使用类似.live()或.on()的内容在元素可用后附加幻灯片事件
一旦元素“div#headbannersearchagedbetween slider”可见,如何将其绑定到该元素?我试图将代码包装成以下形式(使用$(this)作为元素,但我没有使用click事件。我只需要在元素存在后绑定
$(document).on('click','div#headBannerSearchAgedBetweenSlider', function() {
});
我该怎么做
谢谢
我已经尝试了以下方法。ready()运气不佳-这有什么明显的问题吗
$('div#headBannerSearchAgedBetweenSlider').ready(function() {
$('div#headBannerSearchAgedBetweenSlider').slider({
range: true,
min: 18,
max: 99,
values: [18, 65],
change: function(event, ui) {
$('span#headerBannerAgedMin').html(ui.values[0]);
$('span#headerBannerAgedMax').html(ui.values[1]);
},
slide: function(event, ui) {
if (ui.values[0] == ui.values[1]) {return false;}
}
});
});
一旦您的
#headBannerSearchAgedBetweenSlider
元素已加载/出现在DOM中,您就需要调用插件。因为您似乎正在使用(异步)动态加载内容,它应该是这样工作的(我假设您将讨论中的div
加载到元素#包装器中
):
有关AJAX调用的回调函数的信息,请参见。是什么触发了创建
$('div#headBannerSearchAgedBetweenSlider')
?当用户使用jquery.load访问页面时,会加载该div。我想我已经了解了您要做的事情……当div为.load()时,我需要附加事件处理程序。确切地说,只需注意,load
是异步的(因此您不能将插件调用放在下一行),并且您必须以某种回调方式调用.slider()
。请参阅:关于如何执行此操作的信息。ready
在这方面不是一个好主意。抱歉。ready实际上在整个dom准备就绪时触发。..thts。。
$('#wrapper').load('/what/ever.php', function(){ //this function will be executed once your content is successfully loaded
$('div#headBannerSearchAgedBetweenSlider').slider({/*..options go here..*/});
});