当我的文档准备就绪时,我想在所有带有“test”类的元素上运行javascript函数。
$(document).ready(function
{
$('.test').doSomething();
});
想象一下,我还使用jquery / AJAX将一些内容动态加载到div中。该内容还可能包含具有类测试的元素。我如何确保在它们上面调用doSomething。换句话说,我想要一个函数在出现时尽快通过类测试调用,无论它们是在第一个位置还是在动态加载。当然,我可以写
$('.test').doSomething();
在AJAX回调中也是如此,但我希望我能避免在每个AJAX回调中编写相同的代码。这可能吗?这有意义吗?
答案 0 :(得分:1)
上述评论的扩展:
jQuery有几个方法可以让你为所有AJAX请求http://api.jquery.com/ajaxSuccess/注册全局处理程序。您可以使用它并在每次成功请求时调用doSomething
,过滤已经调用该方法的.test
个元素。
有很多方法可以完成“过滤”,但绝对最简单的方法是在触发方法后为每个.test元素添加一个类。
$(document).ajaxSuccess(function () {
$('.test:not(.added)').addClass('added').doSomething();
});
这会同时滤除您已添加的内容。