JQuery 为什么 .offset() 不是 return 值?
JQuery why does .offset() not return value?
您好,我的浏览器检查器出现 JS 错误。但我不明白我的 Jquery 代码有什么问题。为什么他认为这个变量是未定义的...有人可以帮我吗?
代码运行良好;但我更愿意删除错误:
未捕获类型错误:varposlist 未定义
这是我的js代码:
$(function(){
var pane = $('.scroll-pane');
pane.jScrollPane({
});
var api = pane.data('jsp');
if(typeof localStorage!='undefined') {
//Get var from local storage
var menu = sessionStorage.getItem("menu");
var yposistock_rule = sessionStorage.getItem("yposistock_rule");
//Check menu view mode
if(menu == "arbo") {
// defined top from a#on anchor
var varposchapter = $('a#on_menuchapter').offset();
//add - 285 to put at same level than title
var vartop1 = varposchapter.top -285 -yposistock_rule;
if(scrollauto_rule == "oui") {
sessionStorage.removeItem("yposistock_rule");
};
api.scrollTo(0, vartop1);
return false;
}
else{
// defined top from a#on anchor
var varposlist = $('a#on_menulist').offset();
//add - 285 to put at same level than title
var vartop2 = varposlist.top -285 -yposistock_rule;
if(scrollauto_rule == "oui") {
sessionStorage.removeItem("yposistock_rule");
};
api.scrollTo(0, vartop2);
return false;
}
}
});
有什么想法吗?非常感谢。
我唯一能想到的就是这一行:
$('a#on_menulist').offset();
#
选择具有相同ID的元素。除非你有一个 id=on_menulist 的元素,否则这段代码找不到 id,也就找不到偏移量。
您好,我的浏览器检查器出现 JS 错误。但我不明白我的 Jquery 代码有什么问题。为什么他认为这个变量是未定义的...有人可以帮我吗?
代码运行良好;但我更愿意删除错误: 未捕获类型错误:varposlist 未定义
这是我的js代码:
$(function(){
var pane = $('.scroll-pane');
pane.jScrollPane({
});
var api = pane.data('jsp');
if(typeof localStorage!='undefined') {
//Get var from local storage
var menu = sessionStorage.getItem("menu");
var yposistock_rule = sessionStorage.getItem("yposistock_rule");
//Check menu view mode
if(menu == "arbo") {
// defined top from a#on anchor
var varposchapter = $('a#on_menuchapter').offset();
//add - 285 to put at same level than title
var vartop1 = varposchapter.top -285 -yposistock_rule;
if(scrollauto_rule == "oui") {
sessionStorage.removeItem("yposistock_rule");
};
api.scrollTo(0, vartop1);
return false;
}
else{
// defined top from a#on anchor
var varposlist = $('a#on_menulist').offset();
//add - 285 to put at same level than title
var vartop2 = varposlist.top -285 -yposistock_rule;
if(scrollauto_rule == "oui") {
sessionStorage.removeItem("yposistock_rule");
};
api.scrollTo(0, vartop2);
return false;
}
}
});
有什么想法吗?非常感谢。
我唯一能想到的就是这一行:
$('a#on_menulist').offset();
#
选择具有相同ID的元素。除非你有一个 id=on_menulist 的元素,否则这段代码找不到 id,也就找不到偏移量。