我将无限滚动添加到WordPress网页。我正在使用jQuery使用以下代码向每三个内容项添加一个类,而没有任何问题:
jQuery(document).ready(function($) {
$(".leden li:nth-child(3n)").addClass('last');
});
Run Code Online (Sandbox Code Playgroud)
在发现上面的代码没有在AJAX调用后显示动态内容后执行,我添加了以下代码:
jQuery(document).ajaxComplete(function($) {
$(".leden li:nth-child(3n)").addClass('last');
});
Run Code Online (Sandbox Code Playgroud)
我不确定这是否是在AJAX之后添加带有jQuery的类的正确方法,但似乎像Firebug一样,它在向下滚动页面并动态加载内容后仅显示以下控制台错误:
TypeError: $ is not a function
Run Code Online (Sandbox Code Playgroud)
这使我作为JavaScript / jQuery的新手感到困惑,因为为什么在使用相同格式的第二部分jQuery中仅显示错误?据我所知,我只使用了一个不同的偶数处理程序...
我在做什么错,这也是使用AJAX动态添加内容时执行jQuery的正确方法吗?
当您这样做时:
jQuery(document).ajaxComplete(function($) {
Run Code Online (Sandbox Code Playgroud)
您可以$在函数范围内声明一个变量,从而遮盖外部声明jQuery)。当您不向函数传递参数时,此变量将具有value undefined。
做就是了
jQuery(document).ajaxComplete(function() {
Run Code Online (Sandbox Code Playgroud)
如果要使用别名jQueryas $,请将整个代码放在这样的函数调用中:
(function($){
$(document).ajaxComplete(function() {
$(".leden li:nth-child(3n)").addClass('last');
});
// the rest of your code using $ goes here
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2240 次 |
| 最近记录: |