在jQuery .load事件上交换CSS类
Swapping a CSS class on jQuery .load event
我有一个列表样式与CSS -标准的东西。该特性中的项目jQuery .load加载相关信息到另一个div。这工作得很好,但是我还需要改变列表中的类,以反映哪个项目已加载。下面是我现有的代码,这可能会更好地解释它…
<ul class="inner-nav" id="tdlists">
<li class="active"><a onclick="$('##showlist').load('/lists/?List=#ListID#');">#ListName#</a></li>
<li><a onclick="$('##showlist').load('/lists/?List=#ListID#');">#ListName#</a></li>
<li><a onclick="$('##showlist').load('/lists/?List=#ListID#');">#ListName</a></li>
</ul>
实际的列表是由一个db查询填充的,但是我已经剥离了它,因为我不相信它与问题相关,只会使事情复杂化!
您可以利用jQuery为加载回调设置的this
上下文。例如:
$('#showlist').load('/lists/?List=#ListID#', function(){
$(this).addClass('loaded')
});
作为一个额外的技巧,如果您使用事件委托而不是为每个li标记编写onclick属性会更好:
$('#tdlists').on('click', 'li a', function () {
$('#showlist').load('/lists/?List=#ListID#', function(){
$(this).addClass('loaded')
});
}
.load()
事件应该有一个事件处理程序,当事件被触发时会触发,所以你可以在那里设置你的类。
$('#showlist').load('/lists/?List=#ListID#',
function(){
//Add class or perform your logic here
$('#showlist').addClass(x););
}
);
.Load() | jQuery API
jQuery。可以向Load传递一个回调方法,该方法在完成时运行。这样就可以更新父类上的类。
$('#result').load('ajax/test.html', function() {
alert('Load was performed.');
});
相关文章:
- CSS-如何定位内容数据标题
- 窗口大小html css
- 如果文本字段为空,则使用JavaScript应用CSS样式
- 我可以通过JQuery将CSS类交换为一个特殊的元素集吗
- 特定的JavaScript函数,用于将CSS样式表与下拉菜单交换
- li类只能与css交换吗
- 如何根据用户所在的页面交换 css 类
- Rails / JavaScript 在渲染视图之前交换 CSS 类
- 可交换的CSS主题与jQuery事件处理程序
- 交换CSS颜色
- 将cookie添加到现有的Javascript外部CSS文件交换中
- Javascript和CSS点击Div交换
- 检测设备和交换CSS文件- jQuery
- 用文本交换图像(CSS或jQuery?).
- 在dom准备好之前交换css文件,因为我不想让我的页面轻弹
- 如何交换CSS -无法获得元素样式表[objecthtmllinkelement]
- 如何使用jQuery's标志来交换CSS显示属性
- CSS+Javascript交换不同的背景图像
- 在jQuery .load事件上交换CSS类
- 我可以使用javascript更改单独的页面css条目(而不是交换样式表)