未定义的变量:jQuery.min.js

时间:2016-03-20 04:44:46

标签: php jquery wordpress undefined

我从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获得的错误:

  

未定义的变量:分页

     

未定义的变量:lis

     

未定义的变量:next

     

未定义的变量:toHighlight

修改#2: 在将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/

2 个答案:

答案 0 :(得分:1)

看起来您正在收到PHP错误,这会在您的脚本中添加某些字符,并在expected expression, got '<'为您提供< br。看起来您需要先修复PHP错误或关闭PHP错误。

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

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

答案 1 :(得分:0)

感谢user3284463 通过从JS变量中删除$符号来实现它的工作,因为浏览器将JS变量与PHP变量混淆并跳过它们,因为我回应了JS。