未定义变量:jQuery.min.js

Undefined variable: jQuery.min.js

我从 here - Fiddle

得到了这个 jQuery 代码
$(document).ready(function () {
var $pagination = $('.qpagination');
var $lis = $pagination.find('li:not(#qprev, #qnext)');
$lis.filter(':gt(4)').hide();
$lis.filter(':lt(5)').addClass('active');

var $next = $('#qnext').click(function () {
    var idx = $lis.index($lis.filter('.active:last')) || 0;

    var $toHighlight = $lis.slice(idx + 1, idx + 6);
    if ($toHighlight.length == 0) {
        $prev.show();
        return;
    }

    $next.show();        
    $lis.filter('.active').removeClass('active').hide();
    $toHighlight.show().addClass('active')
});

var $prev = $('#qprev').click(function () {
    var idx = $lis.index($lis.filter('.active:first')) || 0;

    var start = idx < 4 ? 0 : idx - 4;
    var $toHighlight = $lis.slice(start, start + 5);
    if ($toHighlight.length == 0) {
        $prev.hide();
        return;
    }      

    $next.show();
    $lis.filter('.active').removeClass('active').hide();
    $toHighlight.show().addClass('active')
});

}); // close jquery

但是,当我复制代码并根据需要进行调整时,似乎不起作用。我收到 Uncaught SyntaxError: Unexpected token 错误。

好像是什么问题?以及如何修复它?

编辑: 这些是我从 Chrome:

得到的错误

Undefined variable: pagination

Undefined variable: lis

Undefined variable: next

Undefined variable: toHighlight

编辑#2: 在 fiddle 上加载 jQuery 2.2.1 后,我的代码可以工作,但它在

上不起作用

https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js?ver=4.4.2

在Wordpress中,使用的是这个版本。 http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.4.2

它在那个版本上也不起作用,我怎样才能让它在 ver=4.4.2 上工作?

这是我的实时网站:http://gulf-brokers.com/

您似乎遇到了 PHP 错误,这些错误正在向您的脚本添加某些字符并在 < br 处为您提供 expected expression, got '<'。看来您需要先修复 PHP 错误或关闭 PHP 错误。

您可以通过简单地为这些变量定义初始值来修复这些错误 Undefined variable: var。即 $pagination= "";

但是,我建议关闭 PHP 错误,因为它只应在开发阶段启用,而且这些错误似乎并不那么严重。

感谢用户3284463 通过从 JS 变量中删除 $ 符号来使其工作,因为浏览器将 JS 变量与 PHP 变量混淆并跳过它们,因为我正在回应 JS.