未定义变量:jQuery.min.js
Undefined variable: jQuery.min.js
得到了这个 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.
$(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.